Part Number Hot Search : 
124ML B1521RW HMC128G8 100MD6 TFA98 N431K H0025NL SS820
Product Description
Full Text Search
 

To Download XC3020 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  2-103 a xc3000 logic cell array families overview .............................................................. 2-104 xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families ................................. 2-105 architecture ...................................................... 2-106 programmable interconnect ............................. 2-111 crystal oscillator .............................................. 2-117 programming ................................................... 2-118 special configuration functions ...................... 2-122 master serial mode .......................................... 2-124 master serial mode programming switching characteristics ............................. 2-125 master parallel mode ....................................... 2-126 master parallel mode programming switching characteristics ............................. 2-127 peripheral mode ............................................... 2-128 peripheral mode programming switching characteristics ............................. 2-129 slave serial mode ............................................ 2-130 slave serial mode programming switching characteristics ............................. 2-131 program readback switching characteristics ............................................. 2-131 general lca switching characteristics ........... 2-132 performance .................................................... 2-133 power ............................................................... 2-134 pin descriptions ............................................... 2-136 pin functions during configuration.................. 2-138 xc3000 families pin assignments .................. 2-139 xc3000 families pinouts ................................. 2-140 component availability ..................................... 2-151 ordering information ........................................ 2-152 xc3000 logic cell array family ........................... 2-153 absolute maximum ratings ............................. 2-154 operating conditions ....................................... 2-154 dc characteristics ........................................... 2-155 switching characteristic guidelines clb .............................................................. 2-156 buffer ........................................................... 2-156 iob .............................................................. 2-158 ordering information ........................................ 2-160 component availability ..................................... 2-160 table of contents xc3000a logic cell array familiy ....................... 2-161 absolute maximum ratings ............................. 2-162 operating conditions ....................................... 2-162 dc characteristics ........................................... 2-163 switching characteristic guidelines clb .............................................................. 2-164 buffer ........................................................... 2-164 iob .............................................................. 2-166 ordering information ........................................ 2-168 component availability ..................................... 2-168 xc3000l low voltage logic cell array family .... 2-169 absolute maximum ratings ............................. 2-170 operating conditions ....................................... 2-170 dc characteristics ........................................... 2-171 switching characteristic guidelines clb .............................................................. 2-172 buffer ........................................................... 2-172 iob .............................................................. 2-174 ordering information ........................................ 2-176 component availability ..................................... 2-176 xc3100, xc3100a logic cell array families ....... 2-177 absolute maximum ratings ............................. 2-178 operating conditions ....................................... 2-178 dc characteristics ........................................... 2-179 switching characteristic guidelines clb .............................................................. 2-180 buffer ........................................................... 2-180 iob .............................................................. 2-182 ordering information ........................................ 2-184 component availability ..................................... 2-184
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-104 overview introduced in 1987/88, xc3000 is the industrys most successful family of fpgas, with over 10 million devices shipped. in 1992/93, xilinx introduced three additional families, offering more speed, functionality, and a new supply-voltage option. there are now five distinct family groupings within the xc3000 class of lca devices. ? xc3000 family ? xc3000a family (use for new designs) ? xc3000l family (use for new designs) ? xc3100 family ? xc3100a family (use for new designs) all five families share a common architecture, develop- ment software, design and programming methodology, and also common package pin-outs. an extensive product description covers these common aspects. (page 2-99). the much shorter individual product specifications then provide detailed parametric information for the four indi- vidual product families. here is a simple overview. xc3000 family the basic xc3000 family forms the cornerstone for the rest of the xc3000 class of devices. the basic xc3000 family offers five different device densities with guaran- teed toggle rates from 70 to 125 mhz. xc3000a family the xc3000a is an enhanced version of the basic xc3000 family, featuring additional interconnect resources and other user-friendly enhancements. the ease-of-use of the xc3000a family makes it the obvious choice for all new designs that do not require the speed of the xc3100 or the 3-v operation of the xc3000l. xc3000l family the xc3000l is identical in architecture and features to the xc3000a family, but operates at a nominal supply voltage of 3.3 v. the xc3000l is the right solution for battery-operated and low-power applications. xc3100 family the xc3100 is a performance-optimized relative of the basic xc3000 family. while both families are bitstream and footprint compatible, the xc3100 family extends toggle rates to 270 mhz and in-system performance to 80 mhz. the xc3100 family also offers one additional array size, the xc3195. the xc3100 is best suited for designs that require the highest clock speed or the shortest net delays. xc3100a family the xc3100a combines the enhanced feature set of the xc3000a with the performance of the xc3100. it offers the highest functionality, speed and capacity of all xc3000 families. the figure below illustrates the relationships between the families. compared to the original xc3000 family, xc3000a offers additional functionality and , coming soon, increased speed. the xc3000l family offers the same additional functionality, but reduced speed due to its lower supply voltage of 3.3 v. the xc3100 family offers no additional functionality, but substantially higher speed, and higher density with its new member, the xc3195. xc3195 gate capacity x3447 functionality xc3000l xc3000a xc3000 xc3100 speed xc3100a
2-105 xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families a features ? complete line of five related field programmable gate array product families C xc3000, xc3000a, xc3000l, xc3100, xc3100a ? ideal for a wide range of custom vlsi design tasks C replaces ttl, msi, and other pld logic C integrates complete sub-systems into a single package C avoids the nre, time delay, and risk of conventional masked gate arrays ? high-performance cmos static memory technology C guaranteed toggle rates of 70 to 325 mhz, logic delays from 9 to 2.2 ns C system clock speeds over 80 mhz C low quiescent and active power consumption ? flexible fpga architecture C compatible arrays ranging from 1,000 to 7,500 gate complexity C extensive register, combinatorial, and i/o capabilities C high fan-out signal distribution, low-skew clock nets C internal 3-state bus capabilities C ttl or cmos input thresholds C on-chip crystal oscillator amplifier ? unlimited reprogrammability C easy design iteration C in-system logic changes ? extensive packaging options C over 20 different packages C plastic and ceramic surface-mount and pin-grid- array packages C thin and very thin quad flat pack (tqfp and vqfp) options ? ready for volume production C standard, off-the-shelf product availability C 100% factory pre-tested devices C excellent reliability record ? complete xact development system C schematic capture, automatic place and route C logic and timing simulation C interactive design editor for design optimization C timing calculator C interfaces to popular design environments like viewlogic, cadence, mentor graphics, and others description the cmos xc3000 class of logic cell array (lca) families provide a group of high-performance, high-den- sity, digital integrated circuits. their regular, extendable, flexible, user-programmable array architecture is com- posed of a configuration program store plus three types of configurable elements: a perimeter of i/o blocks (iobs), a core array of configurable logic bocks (clbs) and re- sources for interconnection. the general structure of an lca device is shown in figure 1 on the next page. the xact development system provides schematic capture and auto place-and-route for design entry. logic and timing simulation, and in-circuit emulation are available as design verification alternatives. the design editor is used for interactive design optimization, and to compile the data pattern that represents the configuration program. the lca user logic functions and interconnections are determined by the configuration program data stored in internal static memory cells. the program can be loaded in any of several modes to accommodate various system requirements. the program data resides externally in an eeprom, eprom or rom on the application circuit board, or on a floppy disk or hard disk. on-chip initialization logic provides for optional automatic loading of program data at power-up. the companion xc17xx serial configuration proms provide a very simple serial config- uration program storage in a one-time programmable package. user i/os horizontal configuration device clbs array max flip-flops longlines data bits XC3020, 3020a, 3020l, 3120, 3120a 64 8 x 8 64 256 16 14,779 xc3030, 3030a, 3030l, 3130, 3130a 100 10 x 10 80 360 20 22,176 xc3042, 3042a, 3042l, 3142, 3142a 144 12 x 12 96 480 24 30,784 xc3064, 3064a, 3064l, 3164, 3164a 224 16 x 14 120 688 32 46,064 xc3090, 3090a, 3090l, 3190, 3190a 320 16 x 20 144 928 40 64,160 xc3195, 3195a 484 22 x 22 176 1,320 44 94,984 product description important notice all new designs should use xc3000a or xc3100a. information on xc3000 and xc3100 is presented here as reference for existing designs.
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-106 p9 p8 p7 p6 p5 p4 p3 p2 gnd pwr dn p11 p12 p13 u61 tcl kin ad ac ab aa 3-state buffers with access to horizontal long lines configurable logic blocks interconnect area bb ba frame pointer configuration memory i/o blocks x3241 figure 1. logic cell array structure. it consists of a perimeter of programmable i/o blocks, a core of configurable logic blocks and their interconnect resources. these are all controlled by the distributed array of configuration program memory cells. the xc3000 logic cell array families provide a variety of logic capacities, package styles, temperature ranges and speed grades. architecture the perimeter of configurable iobs provides a pro- grammable interface between the internal logic array and the device package pins. the array of clbs performs user-specified logic functions. the interconnect resources are programmed to form networks, carrying logic signals among blocks, analogous to printed circuit board traces connecting msi/ssi packages. the block logic functions are implemented by programmed look-up tables. functional options are implemented by program-controlled multiplexers. interconnecting networks between blocks are implemented with metal segments joined by program-controlled pass transistors. these lca functions are established by a configuration program which is loaded into an internal, distributed array of configuration memory cells. the configuration program is loaded into the lca device at power-up and may be reloaded on command. the logic cell array includes logic and control signals to implement automatic or passive configuration. program data may be either bit serial or byte parallel. the xact development system generates the configuration program bitstream used to configure the lca device. the memory loading process is independent of the user logic functions. configuration memory the static memory cell used for the configuration memory in the logic cell array has been designed specifically for high reliability and noise immunity. integrity of the lca device configuration memory based on this design is assured even under adverse conditions. compared with other programming alternatives, static memory provides the best combination of high density, high performance, high reliability and comprehensive testability. as shown in figure 2, the basic memory cell consists of two cmos inverters plus a pass transistor used for writing and read- ing cell data. the cell is only written during configuration and only read during readback. during normal operation, the cell provides continuous control and the pass transistor is off and does not affect cell stability. this is quite different from the operation of conventional memory devices, in which the cells are frequently read and rewritten.
2-107 the method of loading the configuration data is selectable. two methods use serial data, while three use byte-wide data. the internal configuration logic utilizes framing information, embedded in the program data by the xact development system, to direct memory-cell loading. the serial-data framing and length-count preamble provide programming compatibility for mixes of various lca device devices in a synchronous, serial, daisy-chain fashion. i/o block each user-configurable iob shown in figure 3, provides an interface between the external package pin of the device and the internal user logic. each iob includes both registered and direct input paths. each iob provides a programmable 3-state output buffer, which may be driven by a registered or direct output signal. configuration options allow each iob an inversion, a controlled slew rate and a high impedance pull-up. each input circuit also provides input clamping diodes to provide electrostatic protection, and circuits to inhibit latch-up produced by input currents. flip flop q d r slew rate passive pull up output select 3-state invert out invert flip flop or latch d q r registered in direct in out 3- state (output enable) ttl or cmos input threshold output buffer (global reset) ck1 x3029 i/o pad vcc program-controlled memory cells programmable interconnection point or pip = ik ok q i o t program controlled multiplexer ck2 figure 3. input/output block. each iob includes input and output storage elements and i/o options selected by configuration memory cells. a choice of two clocks is available on each die edge. the polarity of each clock line (not each flip-flop or latch) is programmable. a clock line that triggers the flip-flop on the rising edge is an active low latch enable (latch transparent) signal and vice versa. passive pull-up can only be enabled on inputs, not on outputs. all user inputs are programmed for ttl or cmos thresholds. figure 2. static configuration memory cell. it is loaded with one bit of configuration program and controls one program selection in the logic cell array. the memory cell outputs q and q use ground and v cc levels and provide continuous, direct control. the addi- tional capacitive load together with the absence of address decoding and sense amplifiers provide high stability to the cell. due to the structure of the configuration memory cells, they are not affected by extreme power-supply excursions or very high levels of alpha particle radiation. in reliability testing, no soft errors have been observed even in the presence of very high doses of alpha radiation. q data read or write configuration control q x5382
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-108 (iob) pin ft can control output activity. an open-drain output may be obtained by using the same signal for driving the output and 3-state signal nets so that the buffer output is enabled only for a low. configuration program bits for each iob control features such as optional output register, logic signal inversion, and 3-state and slew-rate control of the output. the program-controlled memory cells of figure 3 control the following options. ? logic inversion of the output is controlled by one configuration program bit per iob. ? logic 3-state control of each iob output buffer is determined by the states of configuration program bits which turn the buffer on, or off, or select the output buffer 3-state control interconnection (iob pin t). when this iob output control signal is high, a logic one, the buffer is disabled and the package pin is high impedance. when this iob output control signal is low, a logic zero, the buffer is enabled and the package pin is active. inversion of the buffer 3-state control- logic sense (output enable) is controlled by an additiona l configuration program bit. ? direct or registered output is selectable for each iob. the register uses a positive-edge, clocked flip-flop. the clock source may be supplied (iob pin ok) by either of two metal lines available along each die edge. each of these lines is driven by an invertible buffer. ? increased output transition speed can be selected to improve critical timing. slower transitions reduce capacitive-load peak currents of non-critical outputs and minimize system noise. ? an internal high-impedance pull-up resistor (active by default) prevents unconnected inputs from floating. summary of i/o options ? inputs C direct C flip-flop/latch C cmos/ttl threshold (chip inputs) C pull-up resistor/open circuit ? outputs C direct/registered C inverted/not C 3-state/on/off C full speed/slew limited C 3-state/output enable (inverse) the input-buffer portion of each iob provides threshold detection to translate external signals applied to the package pin to internal logic levels. the global input-buffer threshold of the iobs can be programmed to be compatible with either ttl or cmos levels. the buffered input signal drives the data input of a storage element, which may be configured as either a flip-flop or a latch. the clocking polarity (rising/falling edge-triggered flip-flop, high/low transparent latch) is programmable for each of the two clock lines on each of the four die edges. note that a clock line driving a rising edge-triggered flip-flop makes any latch driven by the same line on the same edge low - level transparent and vice versa ( falling edge, high transparent). all xilinx primitives in the supported schematic-entry packages, however, are positive edge- triggered flip-flops or high transparent latches. when one clock line must drive flip-flops as well as latches, it is necessary to compensate for the difference in clocking polarities with an additional inverter either in the flip-flop clock input or the latch-enable input. i/o storage elements are reset during configuration or by the active-low chip reset input. both direct input (from iob pin i) and registered input (from iob pin q) signals are available for interconnect. for reliable operation, inputs should have transition times of less than 100 ns and should not be left floating. floating cmos input-pin circuits might be at threshold and produce oscillations. this can produce additional power dissipation and system noise. a typical hysteresis of about 300 mv reduces sensitivity to input noise. each user iob includes a programmable high-impedance pull-up resistor, which may be selected by the program to provide a constant high for otherwise undriven package pins. although the logic cell array provides circuitry to provide input protection for electrostatic discharge, normal cmos handling precau- tions should be observed. flip-flop loop delays for the iob and logic-block flip-flops are about 3 ns. this short delay provides good perfor- mance under asynchronous clock and data conditions. short loop delays minimize the probability of a metastable condition that can result from assertion of the clock during data transitions. because of the short-loop-delay charac- teristic in the logic cell array, the iob flip-flops can be used to synchronize external signals applied to the device. once synchronized in the iob, the signals can be used internally without further consideration of their clock rela- tive timing, except as it applies to the internal logic and routing-path delays. iob output buffers provide cmos-compatible 4-ma source-or-sink drive for high fan-out cmos or ttl- com- patible signal levels (8 ma in the xc3100 family). the network driving iob pin o becomes the registered or direct data source for the output buffer. the 3-state control signal
2-109 figure 4. configurable logic block. each clb includes a combinatorial logic section, two flip-flops and a program memory controlled multiplexer selection of function. it has. five logic variable inputs a, b, c, d, and e a direct data in di an enable clock ec a clock (invertible) k an asynchronous direct reset rd two outputs x and y configurable logic block the array of clbs provides the functional elements from which the users logic is constructed. the logic blocks are arranged in a matrix within the perimeter of iobs. the XC3020 has 64 such blocks arranged in 8 rows and 8 columns. the xact development system is used to com- pile the configuration data which is to be loaded into the internal configuration memory to define the operation and interconnection of each block. user definition of clbs and their interconnecting networks may be done by automatic translation from a schematic-capture logic diagram or optionally by installing library or user macros. each clb has a combinatorial logic section, two flip-flops, and an internal control section. see figure 4. there are: five logic inputs (a, b, c, d and e); a common clock input (k); an asynchronous direct reset input (rd); and an enable clock (ec). all may be driven from the interconnect resources adjacent to the blocks. each clb also has two outputs (x and y) which may drive interconnect networks. data input for either flip-flop within a clb is supplied from the function f or g outputs of the combinatorial logic, or the block input, di. both flip-flops in each clb share the q combinatorial function logic variables d rd g f din f g qx qy din f g g qy qx f q d rd enable clock clock direct reset 1 (enable) a b c d e di ec k rd y x x3032 0 (inhibit) (global reset) clb outputs data in 0 1 0 1 mux mux
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-110 figure 5 5a. combinatorial logic option fg generates two functions of four variables each. one variable, a, must be common to both functions. the second and third variable can be any choice of of b, c, qx and qy the fourth variable can be any choice of d or e. 5b. combinatorial logic option f generates any function of five variables: a, d, e and and two choices out of b, c, qx, qy. 5c. combinatorial logic option fgm allows variable e to select between two functions of four variables: both have common inputs a and d and any choice out of b, c, qx and qy for the remaining two variables. option 3 can then implement some functions of six or seven variables. qy any function of up to 4 variables qy any function of up to 4 variables qy any function of 5 variables qy any function of up to 4 variables qy any function of up to 4 variables 5c 5b 5a qx qx qx qx qx a b c d a b c d e e a b c d e d a b c d c a b m u x f g f g f g e x5442 fgm mode d q d q d q count enable parallel enable clock d2 d1 d0 dual function of 4 variables function of 6 variables function of 5 variables q2 q1 q0 fg mode f mode fgm mode terminal count x5383 figure 6. c8bcp macro. the c8bcp macro (modulo-8 binary counter with parallel enable and clock enable) uses one combinatorial logic block of each option.
2-111 switch connections to block inputs are unidirec- tional, as are block outputs, they are usable only for block input connection and not for routing. figure 8 illustrates routing access to logic block input variables, control inputs and block outputs. three types of metal resources are provided to accommodate various network interconnect requirements. ? general purpose interconnect ? direct connection ? longlines (multiplexed busses and wide and gates) general purpose interconnect general purpose interconnect, as shown in figure 9, consists of a grid of five horizontal and five vertical metal segments located between the rows and columns of logic and iobs. each segment is the height or width of a logic block. switching matrices join the ends of these segments and allow programmed interconnections between the metal grid segments of adjoining rows and columns. the switches of an unprogrammed device are all non- conducting. the connections through the switch matrix may be established by the automatic routing or by using editnet to select the desired pairs of matrix pins to be connected or disconnected. the legitimate switching matrix combinations for each pin are indicated in figure 10 and may be highlighted by the use of the show-matrix command in the xact system. asynchronous rd which, when enabled and high, is dominant over clocked inputs. all flip-flops are reset by the active-low chip input, reset, or during the configuration process. the flip-flops share the enable clock (ec) which, when low, recirculates the flip-flops present states and inhibits response to the data-in or combinatorial function inputs on a clb. the user may enable these control inputs and select their sources. the user may also select the clock net input (k), as well as its active sense within each clb. this programmable inversion eliminates the need to route both phases of a clock signal throughout the device. flexible routing allows use of common or individual clb clocking. the combinatorial-logic portion of the clb uses a 32 by 1 look-up table to implement boolean functions. variables selected from the five logic inputs and two internal block flip-flops are used as table address inputs. the combina- torial propagation delay through the network is indepen- dent of the logic function generated and is spike free for single input variable changes. this technique can gener- ate two independent logic functions of up to four variables each as shown in figure 5a, or a single function of five variables as shown in figure 5b, or some functions of seven variables as shown in figure 5c. figure 6 shows a modulo-8 binary counter with parallel enable. it uses one clb of each type. the partial functions of six or seven variables are implemented using the input variable (e) to dynamically select between two functions of four different variables. for the two functions of four variables each, the independent results (f and g) may be used as data inputs to either flip-flop or either logic block output. for the single function of five variables and merged functions of six or seven variables, the f and g outputs are identical. sym- metry of the f and g functions and the flip-flops allows the interchange of clb outputs to optimize routing efficiencies of the networks interconnecting the clbs and iobs. programmable interconnect programmable-interconnection resources in the logic cell array provide routing paths to connect inputs and outputs of the iobs and clbs into logic networks. inter- connections between blocks are composed of a two-layer grid of metal segments. specially designed pass transis- tors, each controlled by a configuration bit, form program- mable interconnect points (pips) and switching matrices used to implement the necessary connections between selected metal segments and block pins. figure 7 is an example of a routed net. the xact development system provides automatic routing of these interconnections. in- teractive routing (editnet) is also available for design optimization. the inputs of the clbs or iobs are multiplex- ers which can be programmed to select an input network from the adjacent interconnect segments. since the figure 7. an xact view of routing resources used to form a typical interconnection network from clb ga.
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-112 x2662 figure 8. xact development system locations of interconnect access, clb control inputs, logic inputs and outputs. the dot pattern represents the available programmable interconnection points (pips). some of the interconnect pips are directional. this is indicated on the xact design editor status line: nd is a nondirectional interconnection. d:h->v is a pip that drives from a horizontal to a vertical line. d:v->h is a pip that drives from a vertical to a horizontal line. d:c->t is a t pip that drives from a cross of a t to the tail. d:cw is a corner pip that drives in the clockwise direction. p0 indicates the pip is non-conducting , p1 is on.
2-113 figure 10. switch matrix interconnection options for each pin. switch matrices on the edges are different. use show matrix menu option in the xact system 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 special buffers within the general interconnect areas pro- vide periodic signal isolation and restoration for improved performance of lengthy nets. the interconnect buffers are available to propagate signals in either direction on a given general interconnect segment. these bidirectional (bidi) buffers are found adjacent to the switching matrices, above and to the right and may be highlighted by the use of the show bidi command in the xact system. the other pips adjacent to the matrices are accessed to or from longlines. the development system automatically de- fines the buffer direction based on the location of the interconnection network source. the delay calculator of the xact development system automatically calculates and displays the block, interconnect and buffer delays for any paths selected. generation of the simulation netlist with a worst-case delay model is provided by an xact option. direct interconnect direct interconnect, shown in figure 11, provides the most efficient implementation of networks between adjacent clbs or i/o blocks. signals routed from block to block using the direct interconnect exhibit minimum interconnect propagation and use no general interconnect resources. for each clb, the x output may be connected directly to the b input of the clb immediately to its right and to the c input of the clb to its left. the y output can use direct interconnect to drive the d input of the block immediately above and the a input of the block below. direct intercon- x2664 figure 9. lca general-purpose interconnect. composed of a grid of metal segments that may be intercon- nected through switch matrices to form networks for clb and iob inputs and outputs. 1105 13 figure 11. clb x and y outputs. the x and y outputs of each clb have single contact, direct access to inputs of adjacent clbs x2663
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-114 x2660 figure 12. XC3020 die-edge iobs. the XC3020 die-edge iobs are provided with direct access to adjacent clbs.
2-115 x1243 figure 13. horizontal and vertical longlines. these longlines provide high fan-out, low-skew signal distribution in each row and column. the global buffer in the upper left die corner drives a common line throughout the lca device. nect should be used to maximize the speed of high- performance portions of logic. where logic blocks are adjacent to iobs, direct connect is provided alternately to the iob inputs (i) and outputs (o) on all four edges of the die. the right edge provides additional direct connects from clb outputs to adjacent iobs. direct interconnec- tions of iobs with clbs are shown in figure 12. longlines the longlines bypass the switch matrices and are in- tended primarily for signals that must travel a long dis- tance, or must have minimum skew among multiple des- tinations. longlines, shown in figure 13, run vertically and horizontally the height or width of the interconnect area. each interconnection column has three vertical longlines, and each interconnection row has two horizontal lon- glines. two additional longlines are located adjacent to the outer sets of switching matrices. in devices larger than the XC3020, two vertical longlines in each column are connectable half-length lines. on the XC3020, only the outer longlines are connectable half-length lines. longlines can be driven by a logic block or iob output on a column-by-column basis. this capability provides a common low skew control or clock line within each column of logic blocks. interconnections of these longlines are shown in figure 14. isolation buffers are provided at each input to a longline and are enabled automatically by the development system when a connection is made. a buffer in the upper left corner of the lca chip drives a global net which is available to all k inputs of logic blocks. using the global buffer for a clock signal provides a skew- free, high fan-out, synchronized clock for use at any or all of the iobs and clbs. configuration bits for the k input to each logic block can select this global line or another routing resource as the clock source for its flip-flops. this net may also be programmed to drive the die edge clock lines for iob use. an enhanced speed, cmos threshold, direct access to this buffer is available at the second pad from the top of the left die edge. a buffer in the lower right corner of the array drives a horizontal longline that can drive programmed connec- tions to a vertical longline in each interconnection column. this alternate buffer also has low skew and high fan-out. the network formed by this alternate buffers longlines can be selected to drive the k inputs of the clbs. cmos threshold, high speed access to this buffer is available from the third pad from the bottom of the right die edge. internal busses a pair of 3-state buffers, located adjacent to each clb, permits logic to drive the horizontal longlines. logic op- eration of the 3-state buffer controls allows them to imple- ment wide multiplexing functions. any 3-state buffer input can be selected as drive for the horizontal long-line bus by applying a low logic level on its 3-state control line. see figure 15a. the user is required to avoid contention which can result from multiple drivers with opposing logic levels.
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-116 control of the 3-state input by the same signal that drives the buffer input, creates an open-drain wired-and func- tion. a logic high on both buffer inputs creates a high impedance, which represents no contention. a logic low enables the buffer to drive the longline low. see figure 15b. pull-up resistors are available at each end of the longline to provide a high output when all connected buffers are non-conducting. this forms fast, wide gating functions. when data drives the inputs, and separate signals drive the 3-state control lines, these buffers form multiplexers (3-state busses). in this case, care must be used to prevent contention through multiple active buffers figure 14 . programmable interconnection of longlines. this is provided at the edges of the routing area. three-state buffers allow the use of horizontal longlines to form on-chip wired and and multiplexed buses. the left two non-clock vertical longlines per column (except XC3020) and the outer perimeter longlines may be programmed as connectible half-length lines. x1244 x1741 d a a d b b d c c d n n d a a ? =d b b ?d c c ? d n n z+ weak keeper circuit figure 15b. 3-state buffers implement a multiplexer. the selection is accomplished by the buffer 3-state signal. v cc d a d b d c d n v cc z = d a d b d c ... d n x3036 (low) t oe figure 15a . 3-state buffers implement a wired-and function. when all the buffer 3-state lines are high, (high impedance), the pull-up resistor(s) provide the high output. the buffer inputs are driven by the control signals or a low.
2-117 option is available to assure symmetry. the oscillator circuit becomes active early in the configuration process to allow the oscillator to stabilize. actual internal connection is delayed until completion of configuration. in figure 17 the feedback resistor r1, between the output and input, biases the amplifier at threshold. the inversion of the amplifier, together with the r-c networks and an at-cut series resonant crystal, produce the 360-degree phase shift of the pierce oscillator. a series resistor r2 may be included to add to the amplifier output impedance when needed for phase-shift control, crystal resistance match- ing, or to limit the amplifier input swing to control clipping at large amplitudes. excess feedback voltage may be corrected by the ratio of c2/c1. the amplifier is designed to be used from 1 mhz to about one-half the specified clb toggle frequency. use at frequencies below 1 mhz may require individual characterization with respect to a series of conflicting levels on a common line. each horizontal longline is also driven by a weak keeper circuit that prevents undefined floating levels by maintaining the pre- vious logic level when the line is not driven by an active buffer or a pull-up resistor. figure 16 shows 3-state buff- ers, longlines and pull-up resistors. crystal oscillator figure 16 also shows the location of an internal high speed inverting amplifier which may be used to implement an on- chip crystal oscillator. it is associated with the auxiliary buffer in the lower right corner of the die. when the oscillator is configured by makebits and connected as a signal source, two special user iobs are also configured to connect the oscillator amplifier with external crystal oscil- lator components as shown in figure 17. a divide by two x1245 figure 16 . xact development system . an extra large view of possible interconnections in the lower right corner of the XC3020.
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-118 table 1 m0 m1 m2 cclk mode data 0 0 0 output master bit serial 0 0 1 output master byte wide addr. = 0000 up 0 1 0 reserved 0 1 1 output master byte wide addr. = ffff down 1 0 0 reserved 1 0 1 output peripheral byte wide 1 1 0 reserved 1 1 1 input slave bit serial alternate clock buffer xtal1 xtal2 (in) r1 r2 y1 c1 c2 internal external r1 r2 c1, c2 y1 suggested component values 0.5 ?1 m w 0 ?1 k w (may be required for low frequency, phase)t (shift and/or compensation level for crystal q) 10 ?40 pf 1 ?20 mhz at-cut parallel resonant x5302 68 pin plcc 47 43 84 pin plcc 57 53 pga j11 l11 132 pin pga p13 m13 160 pin pqfp 82 76 xtal 1 (out) xtal 2 (in) 100 pin cqfp 67 61 pqfp 82 76 164 pin cqfp 105 99 44 pin plcc 30 26 175 pin pga t14 p15 208 pin pqfp 110 100 d q resistance. crystal oscillators above 20 mhz generally require a crystal which operates in a third overtone mode, where the fundamental frequency must be suppressed by an inductor across c2, turning this parallel resonant circuit to double the fundamental crystal frequency, i.e., 2/3 of the desired third harmonic frequency network. when the oscil- lator inverter is not used, these iobs and their package pins are available for general user i/o. programming initialization phase an internal power-on-reset circuit is triggered when power is applied. when vcc reaches the voltage at which portions of the lca device begin to operate (nominally 2.5 to 3 v), the programmable i/o output buffers are 3-stated and a high-impedance pull-up resistor is provided for the user i/o pins. a time-out delay is initiated to allow the power supply voltage to stabilize. during this time the power- down mode is inhibited. the initialization state time-out (about 11 to 33 ms) is determined by a 14-bit counter driven by a self-generated internal timer. this nominal 1- mhz timer is subject to variations with process, tempera- ture and power supply. as shown in table 1, five configu- ration mode choices are available as determined by the input levels of three mode pins; m0, m1 and m2. in master configuration modes, the lca device becomes the source of the configuration clock (cclk). the begin- ning of configuration of devices using peripheral or slave modes must be delayed long enough for their initialization to be completed. an lca device with mode lines selecting a master configuration mode extends its initialization state using four times the delay (43 to 130 ms) to assure that all daisy-chained slave devices, which it may be driving, will figure 17. crystal oscillator inverter. when activated in the makebits program and by selecting an output network for its buffer, the crystal oscillator inverter uses two unconfigured package pins and external components to implement an oscillator. an optional divide-by-two mode is available to assure symmetry.
2-119 all user i/o pins 3-stated with high impedance pull-up, hdc=high, ldc=low initialization power-on time delay clear configuration memory test mode pins configuration program mode start-up operational mode power down no hdc, ldc or pull-up no x3399 init output = low clear is ~ 200 cycles for the XC3020?30 to 400 ? ~ 250 cycles for the xc3030?65 to 500 ? ~ 290 cycles for the xc3042?95 to 580 ? ~ 330 cycles for the xc3064?20 to 660 ? ~ 375 cycles for the xc3090?50 to 750 ? reset active pwrdwn inactive pwrdwn active active reset operates on user logic low on done/program and reset active reset power-on delay is 2 14 cycles for non-master mode?1 to 33 ms 2 16 cycles for master mode?3 to 130 ms figure 18. a state diagram of the configuration process for power-up and reprogram. be ready even if the master is very fast, and the slave(s) very slow. figure 18 shows the state sequences. at the end of initialization, the lca device enters the clear state where it clears the configuration memory. the active low, open-drain initialization signal init indicates when the initialization and clear states are complete. the lca device tests for the absence of an external active low reset before it makes a final sample of the mode lines and enters the configuration state. an external wired-and of one or more init pins can be used to control configura- tion by the assertion of the active-low reset of a master mode device or to signal a processor that the lca devices are not yet initialized. if a configuration has begun, a re-assertion of reset for a minimum of three internal timer cycles will be recognized and the lca device will initiate an abort, returning to the clear state to clear the partially loaded configuration memory words. the lca device will then resample re- set and the mode lines before re-entering the configura- tion state. a re-program is initiated.when a configured xc3000 family device senses a high-to-low transition and subsequent >6 m s low level on the done/ prog package pin, or, if this pin is externally held permanently low, a high-to-low transition and subsequent >6 m s low time on the reset package pin. the lca device returns to the clear state where the configuration memory is cleared and mode lines re- sampled, as for an aborted configuration. the complete configuration program is cleared and loaded during each configuration program cycle. length count control allows a system of multiple logic cell arrays, of assorted sizes, to begin operation in a synchro- nized fashion. the configuration program generated by the makeprom program of the xact development sys- tem begins with a preamble of 111111110010 followed by a 24-bit length count representing the total number of configuration clocks needed to complete loading of the configuration program(s). the data framing is shown in figure 19. all lca devices connected in series read and shift preamble and length count in on positive and out on negative configuration clock edges. an lca device which has received the preamble and length count then presents a high data out until it has intercepted the appropriate number of data frames. when the configuration program memory of an lca device is full and the length count does not yet compare, the lca device shifts any additional data through, as it did for preamble and length count. when the lca device configuration memory is full and the length count compares, the lca device will execute a synchronous start-up sequence and become operational. see figure 20. two cclk cycles after the completion of loading configuration data, the user i/o pins are enabled as configured. as selected in makebits, the internal user- logic reset is released either one clock cycle before or after the i/o pins become active. a similar timing selection is programmable for the done/ prog output signal. done/ prog may also be programmed to be an open drain or include a pull-up resistor to accommodate wired anding. the high during configuration (hdc) and low during configuration ( ldc) are two user i/o pins which are driven active while an lca device is in its initialization,
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-120 XC3020 xc3030 xc3042 xc3064 xc3090 XC3020a xc3030a xc3042a xc3064a xc3090a XC3020l xc3030l xc3042l xc3064l xc3090l xc3120 xc3130 xc3142 xc3164 xc3190 xc3195 device xc3120a xc3130a xc3142a xc3164a xc3190a xc3195a gates 1,000 to 1,500 to 2,000 to 3,500 to 5,000 to 6,500 to 1,500 2,000 3,000 4,500 6,000 7,500 clbs 64 100 144 224 320 484 row x col (8 x 8) (10 x 10) (12 x 12) (16 x 14) (20 x 16) (22 x 22) iobs 64 80 96 120 144 176 flip-flops 256 360 480 688 928 1,320 horizontal longlines 16 20 24 32 40 44 tbufs/horizontal ll 9 11 13 15 17 23 bits per frame 75 92 108 140 172 188 (including1 start and 3 stop bits) frames 197 241 285 329 373 505 program data = 14,779 22,176 30,784 46,064 64,160 94,944 bits x frames + 4 bits (excludes header) prom size (bits) = 14,819 22,216 30,824 46,104 64,200 94,984 program data + 40-bit header clear or configure states. they and done/ prog provide signals for control of external logic signals such as reset, bus enable or prom enable during configuration. for parallel master configuration modes, these signals pro- vide prom enable control and allow the data pins to be shared with user logic signals. user i/o inputs can be programmed to be either ttl or cmos compatible thresholds. at power-up, all inputs have ttl thresholds and can change to cmos thresholds at the completion of configuration if the user has selected cmos thresholds. the threshold of pwrdwn and the direct clock inputs are fixed at a cmos level. if the crystal oscillator is used, it will begin operation before configuration is complete to allow time for stabilization before it is connected to the internal circuitry. configuration data configuration data to define the function and interconnec- tion within a logic cell array is loaded from an external 11111111 0010 < 24-bit length count > 1111 0 111 0 111 0 111 . . . . . . . . . . . . 0 111 0 111 1111 ?ummy bits* ?reamble code ?onfiguration program length ?ummy bits (4 bits minimum) for xc3120 197 configuration data frames (each frame consists of: a start bit (0) a 71-bit data field three stop bits postamble code (4 bits minimum) header program data repeated for each logic cell array in a daisy chain *the lca device require four dummy bits min; xact software generates eight dummy bits x5300 figure 19. internal configuration data structure for an lca device. this shows the preamble, length count and data frames generated by the xact development system. the length count produced by the makebits program = [(40-bit preamble + sum of program data + 1 per daisy chain device) rounded up to multiple of 8] C (2 k 4) where k is a function of done and reset timing selected. an additional 8 is added if roundup increment is less than k. k additional clocks are needed to complete start-up after length count is reached.
2-121 preamble length count data 12 24 4 data frame start bit start bit 3 4 last frame postamble i/o active done internal reset length count* the configuration data consists of a composite 40-bit preamble/length count, followed by one or more concatenated lca programs, separated by 4-bit postambles. an additional final postamble bit is added for each slave device and the result rounded up to a byte boundary. the length count is two less than the number of resulting bits. timing of the assertion of done and termination of the internal reset may each be programmed to occur one cycle before or after the i/o outputs become active. heavy lines indicate the default condition x5303 program weak pull-up * stop 3 stop din figure 20. configuration and start-up of one or more lca devices. storage at power-up and after a re-program signal. several methods of automatic and controlled loading of the re- quired data are available. logic levels applied to mode selection pins at the start of configuration time determine the method to be used. see table 1. the data may be either bit-serial or byte-parallel, depending on the configu- ration mode. the different lca devices have different sizes and numbers of data frames. to maintain compatibil- ity between various device types, the xilinx product fami- lies use compatible configuration formats. for the XC3020, configuration requires 14779 bits for each de- vice, arranged in 197 data frames. an additional 40 bits are used in the header. see figure 20. the specific data format for each device is produced by the makebits command of the development system and one or more of these files can then be combined and appended to a length count preamble and be transformed into a prom format file by the makeprom command of the xact develop- ment system. a compatibility exception precludes the use of an xc2000-series device as the master for xc3000- series devices if their done or reset are programmed to occur after their outputs become active. the tie option of the makebits program defines output levels of unused blocks of a design and connects these to unused routing resources. this prevents indeterminate levels that might produce parasitic supply currents. if unused blocks are not sufficient to complete the tie, the flagnet command of editlca can be used to indicate nets which must not be used to drive the remaining unused routing, as that might affect timing of user nets. norestore will retain the results of tie for timing analysis with querynet before restore returns the design to the untied condition. tie can be omitted for quick breadboard iterations where a few additional milliamps of i cc are acceptable. the configuration bitstream begins with eight high pre- amble bits, a 4-bit preamble code and a 24-bit length count. when configuration is initiated, a counter in the lca device is set to zero and begins to count the total number of configuration clock cycles applied to the device. as each configuration data frame is supplied to the lca device, it is internally assembled into a data word, which is then loaded in parallel into one word of the internal configuration memory array. the configuration loading process is com- plete when the current length count equals the loaded length count and the required configuration program data frames have been written. internal user flip-flops are held reset during configuration. two user-programmable pins are defined in the unconfig- ured logic cell array. high during configuration (hdc) and low during configuration ( ldc) as well as done/ prog may be used as external control signals during configuration. in master mode configurations it is convenient to use ldc as an active-low eprom chip
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-122 daisy chain the xact development system is used to create a com- posite configuration for selected lca devices including: a preamble, a length count for the total bitstream, multiple concatenated data programs and a postamble plus an additional fill bit per device in the serial chain. after loading and passing-on the preamble and length count to a pos- sible daisy-chain, a lead device will load its configuration data frames while providing a high dout to possible down-stream devices as shown in figure 22. loading continues while the lead device has received its configura- tion program and the current length count has not reached the full value. the additional data is passed through the lead device and appears on the data out (dout) pin in serial form. the lead device also generates the configura- tion clock (cclk) to synchronize the serial output data and data in of down-stream lca devices. data is read in on din of slave devices by the positive edge of cclk and shifted out the dout on the negative edge of cclk. a parallel master mode device uses its internal timing generator to produce an internal cclk of 8 times its eprom address rate, while a peripheral mode device produces a burst of 8 cclks for each chip select and write- strobe cycle. the internal timing generator continues to operate for general timing and synchronization of inputs in all modes. special configuration functions the configuration data includes control over several spe- cial functions in addition to the normal user logic functions and interconnect. ? input thresholds ? readback disable ? done pull-up resistor ? done timing ? reset timing ? oscillator frequency divided by two each of these functions is controlled by configuration data bits which are selected as part of the normal xact development system bitstream generation process. input thresholds prior to the completion of configuration all lca device input thresholds are ttl compatible. upon completion of configuration, the input thresholds become either ttl or cmos compatible as programmed. the use of the ttl threshold option requires some additional supply current for threshold shifting. the exception is the threshold of the pwrdwn input and direct clocks which always have a cmos input. prior to the completion of configuration the user i/o pins each have a high impedance pull-up. the enable. after the last configuration data bit is loaded and the length count compares, the user i/o pins become active. options in the makebits program allow timing choices of one clock earlier or later for the timing of the end of the internal logic reset and the assertion of the done signal. the open-drain done/ prog output can be and- tied with multiple lca devices and used as an active-high ready, an active-low prom enable or a reset to other portions of the system. the state diagram of figure 18 illustrates the configuration process. master mode in master mode, the lca device automatically loads configuration data from an external memory device. there are three master modes that use the internal timing source to supply the configuration clock (cclk) to time the incoming data. master serial mode uses serial configura- tion data supplied to data-in (din) from a synchronous serial source such as the xilinx serial configuration prom shown in figure 21. master parallel low and high modes automatically use parallel data supplied to the d0Cd7 pins in response to the 16-bit address generated by the lca device. figure 22 shows an example of the parallel master mode connections required. the lca hex starting ad- dress is 0000 and increments for master low mode and it is ffff and decrements for master high mode. these two modes provide address compatibility with microproces- sors which begin execution from opposite ends of memory. peripheral mode peripheral mode provides a simplified interface through which the device may be loaded byte-wide, as a processor peripheral. figure 23 shows the peripheral mode connec- tions. processor write cycles are decoded from the com- mon assertion of the active low write strobe ( ws), and two active low and one active high chip selects ( cs0, cs1, cs2). the lca device generates a configuration clock from the internal timing generator and serializes the paral- lel input data for internal framing or for succeeding slaves on data out (dout). a output high on ready/ busy pin indicates the completion of loading for each byte when the input register is ready for a new byte. as with master modes, peripheral mode may also be used as a lead device for a daisy-chain of slave devices. slave serial mode slave serial mode provides a simple interface for loading the logic cell array configuration as shown in figure 24. serial data is supplied in conjunction with a synchronizing input clock. most slave mode applications are in daisy- chain configurations in which the data input is driven from the previous logic cell arrays data out, while the clock is supplied by a lead device in master or peripheral mode. data may also be supplied by a processor or other special circuits.
2-123 configuration program can be used to enable the iob pull- up resistors in the operational mode to act either as an input load or to avoid a floating input on an otherwise unused pin. readback the contents of a logic cell array may be read back if it has been programmed with a bitstream in which the readback option has been enabled. readback may be used for verification of configuration and as a method of determining the state of internal logic nodes during debug- ging. there are three options in generating the configura- tion bitstream. ? never inhibits the readback capability. ? one-time, inhibits readback after one readback has been executed to verify the configuration. ? on-command allows unrestricted use of readback. readback is accomplished without the use of any of the user i/o pins; only m0, m1 and cclk are used. the initiation of readback is produced by a low to high transition of the m0/rtrig (read trigger) pin. the cclk input must then be driven by external logic to read back the configuration data. the first three low-to-high cclk transitions clock out dummy data. the subsequent low- to-high cclk transitions shift the data frame information out on the m1/ rdata (read data) pin. note that the logic polarity is always inverted, a zero in configuration be- comes a one in readback, and vice versa. note also that each readback frame has one start bit (read back as a one) but, unlike in configuration, each readback frame has only one stop bit (read back as a zero). the third leading dummy bit mentioned above can be considered the start bit of the first frame. all data frames must be read back to complete the process and return the mode select and cclk pins to their normal functions. readback data includes the current state of each clb flip-flop, each input flip-flop or latch, and each device pad. these data are imbedded into unused configuration bit positions during readback. this state information is used by the xact development system in-circuit verifier to provide visibility into the internal operation of the logic while the system is operating. to readback a uniform time- sample of all storage elements, it may be necessary to inhibit the system clock. reprogram to initiate a re-programming cycle, the dual-function pin done/ prog must be given a high-to-low transition. to reduce sensitivity to noise, the input signal is filtered for two cycles of the lca device internal timing generator. when reprogram begins, the user-programmable i/o output buff- ers are disabled and high-impedance pull-ups are pro- vided for the package pins. the device returns to the clear state and clears the configuration memory before it indi- cates initialized. since this clear operation uses chip- individual internal timing, the master might complete the clear operation and then start configuration before the slave has completed the clear operation. to avoid this problem, the slave init pins must be and-wired and used to force a reset on the master (see figure 22). repro- gram control is often implemented using an external open- collector driver which pulls done/ prog low. once a stable request is recognized, the done/ prog pin is held low until the new configuration has been completed. even if the re-program request is externally held low beyond the configuration period, the lca device will begin operation upon completion of configuration. done pull-up done/ prog is an open-drain i/o pin that indicates the lca device is in the operational state. an optional internal pull-up resistor can be enabled by the user of the xact development system when makebits is executed. the done/ prog pins of multiple lca devices in a daisy- chain may be connected together to indicate all are done or to direct them all to reprogram. done timing the timing of the done status signal can be controlled by a selection in the makebits program to occur either a cclk cycle before, or after, the outputs going active. see figure 20. this facilitates control of external functions such as a prom enable or holding a system in a wait state. reset timing as with done timing, the timing of the release of the internal reset can be controlled by a selection in the makebits program to occur either a cclk cycle before, or after, the outputs going active. see figure 20. this reset keeps all user programmable flip-flops and latches in a zero state during configuration. crystal oscillator division a selection in the makebits program allows the user to incorporate a dedicated divide-by-two flip-flop between the crystal oscillator and the alternate clock line. this guarantees a symmetrical clock signal. although the fre- quency stability of a crystal oscillator is very good, the symmetry of its waveform can be affected by bias or feedback drive. the following seven pages describe the different configuration modes in detail
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-124 master serial mode figure 21. master serial mode in master serial mode, the cclk output of the lead lca device drives a xilinx serial prom that feeds the lca din input. each rising edge of the cclk output increments the serial prom internal address counter. this puts the next data bit on the sprom data output, connected to the lca din pin. the lead lca device accepts this data on the subsequent rising cclk edge. the lead lca device then presents the preamble data (and all data that overflows the lead device) on its dout pin. there is an internal delay of 1.5 cclk periods, which means that dout changes on the falling cclk edge, and the next lca device in the daisy-chain accepts data on the subsequent rising cclk edge. the sprom ce input can be driven from either ldc or done . using ldc avoids potential contention on the din pin, if this pin is configured as user-i/o, but ldc is then restricted to be a permanently high user output. using done also avoids contention on din, provided the early done option is invoked. x6092 ce general- purpose user i/o pins m0 m1 pwrdwn dout m2 hdc other i/o pins reset din cclk data clk +5 v ? ? ? ? oe/reset xc3000 lca device d/p scp ceo cascaded serial memory ldc init xc17xx reset slave lcas with identical configurations during configuration the 5 k w m2 pull-down resistor overcomes the internal pull-up, but it allows m2 to be user i/o. (low resets the xc17xx address pointer) to cclk of optional v cc v pp +5 v daisy-chained lcas with different configurations to din of optional if readback is activated, a 5-k w resistor is required in series with m1 * * ce data clk oe/reset daisy-chained lcas with different configurations to cclk of optional slave lcas with identical configurations to din of optional init
2-125 serial data in cclk (output) serial dout (output) 1 t dsck 2 t ckds n n + 1 n + 2 n ?3 n ?2 n ?1 n x3223 master serial mode programming switching characteristics speed grade min max units description symbol cclk data in setup 1 t dsck 60 ns data in hold 2 ckds 0ns notes: 1. at power-up, v cc must rise from 2.0 v to v cc min in less than 25 ms. if this is not possible, configuration can be delayed by holding reset low until v cc has reached 4.0 v (2.5 v for the xc3000l). a very long v cc rise time of >100 ms, or a non-monotonically rising v cc may require >6- m s high level on reset, followed by a >6- m s low level on reset and d/ p after v cc has reached 4.0 v (2.5 v for the xc3000l). 2. configuration can be controlled by holding reset low with or until after the init of all daisy-chain slave-mode devices is high. 3. master-serial-mode timing is based on slave-mode testing.
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-126 master parallel mode figure 22. master parallel mode x3159 rclk general- purpose user i/o pins m0 m1pwrdwn m2 hdc other i/o pins d7 d6 d5 d4 d3 d2 d1 d0 a15 a14 a13 a12 a11 a10 a9 a8 a7 a6 a5 a4 a3 a2 a1 a0 a10 a9 a8 a7 a6 a5 a4 a3 a2 a1 a0 d7 d6 d5 d4 d3 d2 d1 d0 +5 v ..... ce oe lca cclk dout system reset a11 a12 a13 a14 a15 eprom reset ... other i/o pins dout m2 hdc ldc lca slave #1 +5 v m0 m1pwrdwn cclk din d/p reset dout lca slave #n +5 v m0 m1pwrdwn cclk din d/p general- purpose user i/o pins reset master ... +5 v 8 init ... m2 hdc ldc init general- purpose user i/o pins +5 v d/p other i/o pins note: xc2000 devices do not have init to hold off a master device. reset of a master device should be asserted by an external timing circuit to allow for lca cclk variations in clear state time. open collector init n.c. reprogram 5 k 5 k 5 k 5 k?each if readback is activated, a 5-k?resistor is required in series with m1 * * ** internal delay of 1.5 cclk periods, after the rising cclk edge that accepts a byte of data, and also changes the eprom address, until the falling cclk edge that makes the lsb (d0) of this byte appear at dout. this means that dout changes on the falling cclk edge, and the next lca device in the daisy chain accepts data on the subse- quent rising cclk edge. in master parallel mode, the lead lca device directly addresses an industry-standard byte-wide eprom and accepts eight data bits right before incrementing (or decrementing) the address outputs. the eight data bits are serialized in the lead lca device, which then presents the preamble data (and all data that overflows the lead device) on the dout pin. there is an
2-127 master parallel mode programming switching characteristics description symbol min max units rclk to address valid 1 t rac 0 200 ns to data setup 2 t drc 60 ns to data hold 3 t rcd 0ns rclk high t rch 600 ns rclk low t rcl 4.0 m s notes: 1. at power-up, v cc must rise from 2.0 v to v cc min in less than 25 ms. if this is not possible, configuration can be delayed by holding reset low until v cc has reached 4.0 v (2.5 v for the xc3000l). a very long v cc rise time of >100 ms, or a non-monotonically rising v cc may require a >6- m s high level on reset, followed by a >6- m s low level on reset and d/p after v cc has reached 4.0 v (2.5 v for the xc3000l). 2. configuration can be controlled by holding reset low with or until after the init of all daisy-chain slave-mode devices is high. this timing diagram shows that the eprom requirements are extremely relaxed: eprom access time can be longer than 4000 ns. eprom data output has no hold time requirements. address for byte n byte 2 t drc address for byte n + 1 d7 d6 a0-a15 (output) d0-d7 rclk (output) cclk (output) dout (output) 1 t rac 7 cclks cclk 3 t rcd byte n - 1 x5380
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-128 peripheral mode x3031 address bus data bus d0? address decode logic cs0 ... rdy/busy ws reset ... other i/o pins d0? cclk dout m2 hdc ldc lca general- purpose user i/o pins d/p m0 m1 pwr dwn +5 v cs2 cs1 control signals 8 init reprogram +5 v 5 k * if readback is activated, a 5-k?resistor is required in series with m1 * optional daisy-chained lcas with different configurations oc figure 23. peripheral mode. peripheral mode uses the trailing edge of the logic and condition of the cs0, cs1, cs2, and ws inputs to accept byte-wide data from a microprocessor bus. in the lead lca device, this data is loaded into a double-buffered uart- like parallel-to-serial converter and is serially shifted into the internal logic. the lead lca device presents the preamble data (and all data that overflows the lead device) on the dout pin. the ready/busy output from the lead lca device acts as a handshake signal to the microprocessor. rdy/ busy goes low when a byte has been received, and goes high again when the byte-wide input buffer has transferred its information into the shift register, and the buffer is ready to receive new data. the length of the busy signal depends on the activity in the uart. if the shift register had been empty when the new byte was received, the busy signal lasts for only two cclk periods. if the shift register was still full when the new byte was received, the busy signal can be as long as nine cclk periods. note that after the last byte has been entered, only seven of its bits are shifted out. cclk remains high with dout equal to bit 6 (the next-to-last bit) of the last byte entered.
2-129 peripheral mode programming switching characteristics 6 busy t d6 dout rdy/busy d7 d0 d1 d2 4 wtrb t valid 2 dc t 1 ca t cclk d0-d7 cs2 ws, cs0, cs1 3 cd t write to lca x3249 previous byte new byte this timing diagram shows very relaxed requirements: data need not be held beyond the rising edge of ws. busy will go active within 60 ns after the end of ws. busy will stay active for several microseconds. ws may be asserted immedi- ately after the end of busy. periods description symbol min max units write effective write time required 1 t ca 100 ns (assertion of cs0, cs1, cs2, ws) din setup time required 2 t dc 60 ns din hold time required 3 t cd 0ns rdy/ busy delay after end of ws 4 t wtrb 60 ns rdy earliest next ws after end of busy 5 t rbwt 0ns busy low time generated 6 t busy 2.5 9 cclk notes: 1. at power-up, v cc must rise from 2.0 v to v cc min in less than 25 ms. if this is not possible, configuration can be delayed by holding reset low until v cc has reached 4.0 v (2.5 v for the xc3000l). a very long v cc rise time of >100 ms, or a non-monotonically rising v cc may require a >6- m s high level on reset, followed by a >6- m s low level on reset and d/ p after v cc has reached 4.0 v (2.5 v for the xc3000l). 2. configuration must be delayed until the init of all lcas is high. 3. time from end of ws to cclk cycle for the new byte of data depends on completion of previous byte processing and the phase of the internal timing generator for cclk. 4. cclk and dout timing is tested in slave mode. 5. t busy indicates that the double-buffered parallel-to-serial converter is not yet ready to receive new data. the shortest t busy occurs when a byte is loaded into an empty parallel-to-serial converter. the longest t busy occurs when a new word is loaded into the input register before the second-level buffer has started shifting out data.
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-130 slave serial mode in slave serial mode, an external signal drives the cclk input(s) of the lca device(s). the serial configuration bitstream must be available at the din input of the lead lca device a short set-up time before each rising cclk edge. the lead lca device then presents the preamble data (and all data that overflows the lead device) on its dout pin. there is an internal delay of 0.5 cclk periods, which means that dout changes on the falling cclk edge, and the next lca device in the daisy-chain accepts data on the subsequent rising cclk edge. figure 24. slave serial mode. d/p reset x3157 lca general- purpose user i/o pins +5 v m0 m1 pwrdwn cclk din strb d0 d1 d2 d3 d4 d5 d6 d7 reset i/o port micro computer dout hdc ldc m2 ... other i/o pins init +5 v 5 k if readback is activated, a 5-k?resistor is required in series with m1 * optional daisy-chained lcas with different configurations *
2-131 program readback switching characteristics description symbol min max units cclk to dout 3 t cco 100 ns din setup 1 t dcc 60 ns din hold 2 t ccd 0ns high time 4 t cch 0.05 m s low time (note 1) 5 t ccl 0.05 5.0 m s frequency f cc 10 mhz slave serial mode programming switching characteristics notes: 1. the max limit of cclk low time is caused by dynamic circuitry inside the lca device. 2. configuration must be delayed until the init of all lca devices is high. 3. at power-up, v cc must rise from 2.0 v to v cc min in less than 25 ms. if this is not possible, configuration can be de- layed by holding reset low until v cc has reached 4.0 v (2.5 v for the xc3000l). a very long v cc rise time of >100 ms, or a non-monotonically rising v cc may require a >6- m s high level on reset, followed by a >6- m s low level on reset and d/ p after v cc has reached 4.0 v (2.5 v for the xc3000l). description symbol min max units rtrig rtrig high 1 t rth 250 ns cclk rtrig setup 2 t rtcc 200 ns rdata delay 3 t ccrd 100 ns high time 5 t cchr 0.5 m s low time 4 t cclr 0.5 5 m s notes: 1. during readback, cclk frequency may not exceed 1 mhz. 2. retrig (m0 positive transition) shall not be done until after one clock following active i/o pins. 3. readback should not be initiated until configuration is complete. 4. t cclr is 5 m s min to 15 m s max for xc3000l. 4 t cch bit n bit n + 1 bit n bit n - 1 3 t cco 5 t ccl 2 t ccd 1 t dcc din cclk dout (output) x5379 1 t rth 5 3 4 4 2 t ccl t ccrd t ccl t rtcc done/prog (output) x6116 rtrig (m0) cclk(1) valid readback output h1-z valid readback output m1 input/ rdata output
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-132 general lca switching characteristics description symbol min max units reset (2) m0, m1, m2 setup time required 2 t mr 1 m s m0, m1, m2 hold time required 3 t rm 3 m s reset width (low) req. for abort 4 t mrw 6 m s done/ prog width (low) required for re-config. 5 t pgw 6 m s init response after d/ p is pulled low 6 t pgi 7 m s pwrdwn (3) power down v cc v ccpd 2.3 v notes: 1. at power-up, v cc must rise from 2.0 v to v cc min in less than 25 ms. if this is not possible, configuration can be de- layed by holding reset low until v cc has reached 4.0 v (2.5 v for xc3000l). a very long v cc rise time of >100 ms, or a non-monotonically rising v cc may require a >1- m s high level on reset, followed by a >6- m s low level on reset and d/ p after v cc has reached 4.0 v (2.5 v for xc3000l). 2. reset timing relative to valid mode lines (m0, m1, m2) is relevant when reset is used to delay configuration. the specified hold time is caused by a shift-register filter slowing down the response to reset during configuration. 3. pwrdwn transitions must occur while v cc >4.0 v(2.5 v for xc3000l). 4 t mrw 2 t mr 3 t rm 5 t pgw 6 t pgi clear state configuration state user state note 3 v ccpd x5387 reset m0/m1/m2 done/prog init (output) pwrdwn v cc (valid)
2-133 performance device performance the xc3000 families of fpgas can achieve very high performance. this is the result of ? a sub-micron manufacturing process, developed and continuously being enhanced for the production of state-of-the-art cmos srams. ? careful optimization of transistor geometries, circuit design, and lay-out, based on years of experience with the xc3000 family. ? a look-up table based, coarse-grained architecture that can collapse multiple-layer combinatorial logic into a single function generator. one clb can imple- ment up to four layers of conventional logic in as little as 2.7 ns. actual system performance is determined by the timing of critical paths, including the delay through the combinato- rial and sequential logic elements within clbs and iobs, plus the delay in the interconnect routing. the ac-timing specifications state the worst-case timing parameters for the various logic resources available in the xc3000- families architecture. figure 25 shows a variety of ele- ments involved in determining system performance. logic block performance is expressed as the propagation time from the interconnect point at the input to the block to the output of the block in the interconnect area. since combinatorial logic is implemented with a memory lookup table within a clb, the combinatorial delay through the clb, called t ilo , is always the same, regardless of the function being implemented. for the combinatorial logic function driving the data input of the storage element, the critical timing is data set-up relative to the clock edge provided to the flip-flop element. the delay from the clock source to the output of the logic block is critical in the timing signals produced by storage elements. loading of a logic- block output is limited only by the resulting propagation delay of the larger interconnect network. speed perfor- mance of the logic block is a function of supply voltage and temperature. see figure 26. interconnect performance depends on the routing re- sources used to implement the signal path. direct inter- connects to the neighboring clb provide an extremely fast path. local interconnects go through switch matrices (magic boxes) and suffer an rc delay, equal to the resistance of the pass transistor multiplied by the capaci- tance of the driven metal line. longlines carry the signal across the length or breadth of the chip with only one access delay. generous on-chip signal buffering makes performance relatively insensitive to signal fan-out; in- creasing fan-out from 1 to 8 changes the clb delay by only 10%. clocks can be distributed with two low-skew clock distribution networks. the tools in the xact development system used to place and route a design in an xc3000 fpga (the automatic place and route [apr] program and the xact design editor)automatically calculate the actual maximum worst- case delays along each signal path. this timing informa- tion can be back-annotated to the designs netlist for use in timing simulation or examined with x-delay, a static timing analyzer. actual system performance is applications dependent. the maximum clock rate that can be used in a system is determined by the critical path delays within that system. these delays are combinations of incremental logic and routing delays, and vary from design to design. in a synchronous system, the maximum clock rate depends on the number of combinatorial logic layers between re- synchronizing flip-flops. figure 27 shows the achievable clock rate as a function of the number of clb layers. figure 25. primary block speed factors. actual timing is a function of various block factors combined with routing factors. overall performance can be evaluated with the xact timing calculator or by an optional simulation. clb clb iob clb pad (k) logic logic cko t clock clock to output combinatorial setup t cko t ilo t ick (k) pad iob t pid t okpo op t x3178
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-134 figure 26. relative delay as a function of temperature, supply voltage and processing variations power power distribution power for the lca device is distributed through a grid to achieve high noise immunity and isolation between logic and i/o. inside the lca device, a dedicated v cc and ground ring surrounding the logic array provides power to the i/o drivers. an independent matrix of v cc and groundlines supplies the interior logic of the device. this power distribution grid provides a stable supply and ground for all internal logic, providing the external package power pins are all connected and appropriately decoupled. typi- cally a 0.1- m f capacitor connected near the v cc and ground pins will provide adequate decoupling. output buffers capable of driving the specified 4- or 8-ma loads under worst-case conditions may be capable of driving as much as 25 to 30 times that current in a best case. noise can be reduced by minimizing external load capacitance and reducing simultaneous output transitions in the same direction. it may also be beneficial to locate heavily loaded output buffers near the ground pads. the i/o block output buffers have a slew-limited mode which should be used where output rise and fall times are not speed critical. slew-limited outputs maintain their dc drive capability, but generate less external reflections and inter- nal noise. system clock (mhz) 250 200 150 100 50 3 clbs (3-12) 4 clbs (4-16) 2 clbs (2-8) 1 clb (1-4) xc3100-3 xc3000-125 clb levels: gate levels: 300 toggle rate 0 x3250 figure 27. clock rate as a function of logic complexity (number of combinational levels between flip-flops) 1.00 0.80 0.60 0.40 0.20 specified worst-case values max commercial (4.75 v) max military (4.5 v) ?55 min military (5.5 v) min commercial (4.75 v) min commercial (5.25 v) typical commercial (+ 5.0 v, 25 c) typical military temperature ( c) ?40 ?20 0 25 40 70 80 100 125 normalized delay x6094 min military (4.5 v)
2-135 dynamic power consumption xc3042 xc3042a xc3042l xc3142a one clb driving three local interconnects 0.25 0.17 0.07 0.25 mw per mhz one global clock buffer and clock line 2.25 1.40 0.50 1.70 mw per mhz one device output with a 50 pf load 1.25 1.25 0.55 1.25 mw per mhz power consumption the logic cell array exhibits the low power consumption characteristic of cmos ics. for any design, the configu- ration option of ttl chip input threshold requires power for the threshold reference. the power required by the static memory cells that hold the configuration data is very low and may be maintained in a power-down mode. typically, most of power dissipation is produced by exter- nal capacitive loads on the output buffers. this load and frequency dependent power is 25 m w/pf/mhz per output. another component of i/o power is the external dc loading on all output pins. internal power dissipation is a function of the number and size of the nodes, and the frequency at which they change. in an lca device, the fraction of nodes changing on a given clock is typically low (10-20%). for example, in a long binary counter, the total activity of all counter flip-flops is equivalent to that of only two clb outputs toggling at the clock frequency. typical global clock-buffer power is be- tween 2.0 mw/mhz for the XC3020 and 3.5 mw/mhz for the xc3090. the internal capacitive load is more a func- tion of interconnect than fan-out. with a typical load of three general interconnect segments, each clb output requires about 0.25 mw per mhz of its output frequency. because the control storage of the logic cell array is cmos static memory, its cells require a very low standby current for data retention. in some systems, this low data retention current characteristic can be used as a method of preserving configurations in the event of a primary power loss. the logic cell array has built in powerdown logic which, when activated, will disable normal operation of the device and retain only the configuration data. all internal operation is suspended and output buffers are placed in their high-impedance state with no pull-ups. different from the xc3000 family which can be powered down to a current consumption of a few microamps, the xc3100 draws 5 ma, even in power-down. this makes power-down operation less meaningful. in contrast, i ccpd for the xc3000l is only 10 m a. to force the logic cell array into the powerdown state, the user must pull the pwrdwn pin low and continue to supply a retention voltage to the v cc pins. when normal power is restored, v cc is elevated to its normal operating voltage and pwrdwn is returned to a high. the logic cell array resumes operation with the same internal se- quence that occurs at the conclusion of configuration. internal-i/o and logic-block storage elements will be reset, the outputs will become enabled and the done/ prog pin will be released. when v cc is shut down or disconnected, some power might unintentionally be supplied from an incoming signal driving an i/o pin. the conventional electrostatic input protection is implemented with diodes to the supply and ground. a positive voltage applied to an input (or output) will cause the positive protection diode to conduct and drive the v cc connection. this condition can produce invalid power conditions and should be avoided. a large series resistor might be used to limit the current or a bipolar buffer may be used to isolate the input signal.
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-136 pin descriptions permanently dedicated pins. v cc two to eight (depending on package type) connections to the positive v supply voltage. all must be connected. gnd two to eight (depending on package type) connections to ground. all must be connected. pwrdwn a low on this cmos-compatible input stops all internal activity, but retains configuration. all flip-flops and latches are reset, all outputs are 3-stated, and all inputs are interpreted as high, independent of their actual level. when pwdwn returns high, the lca device becomes operational with done low for two cycles of the internal 1-mhz clock.before and during configuration, pwrdwn must be high. if not used, pwrdwn must be tied to v cc . reset this is an active low input which has three functions. prior to the start of configuration, a low input will delay the start of the configuration process. an internal circuit senses the application of power and begins a minimal time-out cycle. when the time-out and reset are com- plete, the levels of the m lines are sampled and configura- tion begins. if reset is asserted during a configuration, the lca device is re-initialized and restarts the configuration at the termination of reset. if reset is asserted after configuration is complete, it provides a global asynchronous reset of all iob and clb storage elements of the lca device. cclk during configuration, configuration clock is an output of an lca device in master mode or peripheral mode, but an input in slave mode. during readback, cclk is a clock input for shifting configuration data out of the lca device cclk drives dynamic circuitry inside the lca device. the low time may, therefore, not exceed a few microseconds. when used as an input, cclk must be parked high. an internal pull-up resistor maintains high when the pin is not being driven. done/ prog (d/ p) done is an open-drain output, configurable with or without an internal pull-up resistor of 2 to 8 k w . at the completion of configuration, the lca device circuitry becomes active in a synchronous order; done is programmed to go active high one cycle either before or after the outputs go active. once configuration is done, a high-to-low transition of this pin will cause an initialization of the lca device and start a reconfiguration. m0/rtrig as mode 0, this input is sampled on power-on to determine the power-on delay (2 14 cycles if m0 is high, 2 16 cycles if m0 is low). before the start of configuration, this input is again sampled together with m1, m2 to determine the configuration mode to be used . a low-to-high input transition, after configuration is com- plete, acts as a read trigger and initiates a readback of configuration and storage-element data clocked by cclk. by selecting the appropriate readback option when gen- erating the bitstream, this operation may be limited to a single readback, or be inhibited altogether. m1/ rdata as mode 1, this input and m0, m2 are sampled before the start of configuration to establish the configuration mode to be used. if readback is never used, m1 can be tied directly to ground or v cc . if readback is ever used, m1 must use a 5-k w resistor to ground or v cc , to accommodate the rdata output. as an active-low read data, after configuration is com- plete, this pin is the output of the readback data.
2-137 user i/o pins that can have special functions. m2 during configuration, this input has a weak pull-up resistor. together with m0 and m1, it is sampled before the start of configuration to establish the configuration mode to be used. after configuration, this pin is a user-programmable i/o pin. hdc during configuration, this output is held at a high level to indicate that configuration is not yet complete. after con- figuration, this pin is a user-programmable i/o pin. ldc during configuration, this output is held at a low level to indicate that the configuration is not yet complete. after configuration, this pin is a user-programmable i/o pin. ldc is particularly useful in master mode as a low enable for an eprom, but it must then be programmed as a high after configuration. init this is an active low open-drain output with a weak pull- up and is held low during the power stabilization and internal clearing of the configuration memory. it can be used to indicate status to a configuring microprocessor or, as a wired and of several slave mode devices, a hold-off signal for a master mode device. after configuration this pin becomes a user-programmable i/o pin. bclkin this is a direct cmos level input to the alternate clock buffer (auxiliary buffer) in the lower right corner. xtl1 this user i/o pin can be used to operate as the output of an amplifier driving an external crystal and bias circuitry. xtl2 this user i/o pin can be used as the input of an amplifier connected to an external crystal and bias circuitry. the i/ o block is left unconfigured. the oscillator configuration is activated by routing a net from the oscillator buffer symbol output and by the makebits program. cs0, cs1, cs2, ws these four inputs represent a set of signals, three active low and one active high, that are used to control configu- ration-data entry in the peripheral mode. simultaneous assertion of all four inputs generates a write to the internal data buffer. the removal of any assertion clocks in the d0- d7 data. in master-parallel mode, ws and cs2 are the a0 and a1 outputs. after configuration, these pins are user- programmable i/o pins. rdy/ busy during peripheral parallel mode configuration this pin indicates when the chip is ready for another byte of data to be written to it. after configuration is complete, this pin becomes a user-programmed i/o pin. rclk during master parallel mode configuration, each change on the a0-15 outputs is preceded by a rising edge on rclk, a redundant output signal. after configuration is complete, this pin becomes a user-programmed i/o pin. d0-d7 this set of eight pins represents the parallel configuration byte for the parallel master and peripheral modes. after configuration is complete, they are user-programmed i/o pins. a0-a15 during master parallel mode, these 16 pins present an address output for a configuration eprom. after configu- ration, they are user-programmable i/o pins. din during slave or master serial configuration, this pin is used as a serial-data input. in the master or peripheral configuration, this is the data 0 input. after configuration is complete, this pin becomes a user-programmed i/o pin. dout during configuration this pin is used to output serial- configuration data to the din pin of a daisy-chained slave. after configuration is complete, this pin becomes a user- programmed i/o pin. tclkin this is a direct cmos-level input to the global clock buffer. this pin can also be configured as a user programmable i/o pin. however, since tclkin is the preferred input to the global clock net, and the global clock net should be used as the primary clock source, this pin is usually the clock input to the chip. unrestricted user i/o pins. i/o an i/o pin may be programmed by the user to be an input or an output pin following configuration. all unrestricted i/ o pins, plus the special pins mentioned on the following page, have a weak pull-up resistor of 50 k w to 100 k w that becomes active as soon as the device powers up, and stays active until the end of configuration. before and during configuration, all outputs that are not used for the configuration process are 3-stated with a 50 k w to 100 k w pull-up resistor.
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-138 configuration mode slave <1:1:1> master-ser <0:0:0> peripheral <1:0:1> master-high <1:1:0> master-low <1:0:0> *** 44 plcc 7 12 16 17 18 19 20 22 23 26 27 28 30 34 38 39 40 1 x 68 plcc 10 18 25 26 27 28 30 34 35 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 1 2 3 4 5 6 7 8 9 x x 84 plcc 12 22 31 32 33 34 36 42 43 53 54 55 56 57 58 60 61 62 64 65 66 67 70 71 72 73 74 75 76 77 78 81 82 83 84 1 2 3 4 5 8 9 10 11 x x x x** x** x** 84 pga b2 f3 j2 l1 k2 k3 l3 k6 j6 l11 k10 j10 k11 j11 h10 f10 g10 g11 f9 f11 e11 e10 d10 c11 b11 c10 a11 b10 b9 a10 a9 b6 b7 a7 c7 c6 a6 a5 b5 c5 a3 a2 b3 a1 x x x 100 pqfp 29 41 52 54 56 57 59 65 66 76 78 80 81 82 83 87 88 89 91 92 93 94 98 99 100 1 2 5 6 8 9 12 13 14 15 16 17 18 19 20 23 24 25 26 x x x 132 pga a1 c8 b13 a14 c13 b14 d14 g14 h12 m13 p14 n13 m12 p13 n11 m9 n9 n8 m8 n7 p6 m6 m5 n4 n2 m3 p1 m2 n1 l2 l1 k1 j2 h1 h2 h3 g2 g1 f2 e1 d1 d2 b1 c2 x x 160 pqfp 159 20 40 42 44 45 49 59 19 76 78 80 81 82 86 92 93 98 100 102 103 108 114 115 119 120 121 124 125 128 129 132 133 136 137 139 141 142 147 148 151 152 155 156 x x 175 pga b2 d9 b14 b15 c15 e14 d16 h15 j14 p15 r15 r14 n13 t14 p12 t11 r10 r9 n9 p8 r8 r7 r5 p5 r3 n4 r2 p2 m3 p1 n1 m1 l2 k2 k1 j3 h2 h1 f2 e1 d1 c1 e3 c2 x x user operation pwrdwn (i) vcc rdata rtrig (i) i/o i/o i/o i/o gnd xtl2 or i/o reset (i) program (i) i/o xtl1 or i/o i/o i/o i/o i/o vcc i/o i/o i/o i/o i/o i/o i/o cclk (i) i/o i/o i/o i/o i/o i/o i/o i/o gnd i/o i/o i/o i/o i/o i/o i/o i/o all others XC3020 etc. xc3030 etc. xc3042 etc. xc3064 etc. xc3090 etc. xc3195 x5266 100 tqfp 26 38 49 51 53 54 56 62 63 73 75 77 78 79 80 84 85 86 88 89 90 91 95 96 97 98 99 2 3 5 6 9 10 11 12 13 14 15 16 17 20 21 22 26 x x 3 26 48 50 56 57 61 77 79 100 102 107 109 110 115 122 123 128 130 132 133 138 145 146 151 152 153 161 162 165 166 172 173 178 179 182 184 185 192 193 199 200 203 204 x x **** 208 pqfp pwrdwn (i) vcc m1 (low) (i) m0 (low) (i) m2 (low) (i) hdc (high) ldc (low) init* gnd reset (i) done vcc din (i) dout cclk(o) gnd pwrdwn (i) vcc m1 (low) (i) m0 (low) (i) m2 (high) (i) hdc (high) ldc (low) init* gnd reset (i) done data 7 (i) data 6 (i) data 5 (i) data 4 (i) vcc data 3 (i) data 2 (i) data 1 (i) rclk data 0 (i) dout cclk(o) a0 a1 a2 a3 a15 a4 a14 a5 gnd a13 a6 a12 a7 a11 a8 a10 a9 pwrdwn (i) vcc m1 (high) (i) m0 (low) (i) m2 (high) (i) hdc (high) ldc (low) init* gnd reset (i) done data 7 (i) data 6 (i) data 5 (i) data 4 (i) vcc data 3 (i) data 2 (i) data 1 (i) rclk data 0 (i) dout cclk(o) a0 a1 a2 a3 a15 a4 a14 a5 gnd a13 a6 a12 a7 a11 a8 a10 a9 pwrdwn (i) vcc m1 (low) (i) m0 (high) (i) m2 (high) (i) hdc (high) ldc (low) init* gnd reset (i) done data 7 (i) data 6 (i) data 5 (i) cs0 (i) data 4 (i) vcc data 3 (i) cs1 (i) data 2 (i) data 1 (i) rdy/busy data 0 (i) dout cclk(o) ws (i) cs2 (i) gnd pwrdwn (i) vcc m1 (high) (i) m0 (high) (i) m2 (high) (i) hdc (high) ldc (low) init* gnd reset (i) done vcc din (i) dout cclk (i) gnd pin functions during configuration before and during configuration, all outputs that are not used for the configuration process are 3-stated with a 50 k w to 100 k w pull-up resistor. represents a 50-k w to 100-k w pull-up before and during configuration * init is an open drain output during configuration (i) represents an input ** pin assignmnent for the xc3064/xc3090 and xc3195 differ from those shown. see page 2-138. *** peripheral mode and master parallel mode are not supported in the pc44 package. see page 2-135. **** pin assignments for the xc3195 pq208 differ from those shown. see page 2-146. pin assignments of pga footprint plcc sockets and pga packages are not electrically identical. generic i/o pins are not shown. the information on this page is provided as a convenient summary. for detailed pin descriptions, see the preceding two pages. for a detailed description of the configuration modes, see pages 2-190 through 2-200. for pinout details, see pages 2-136 through 2-146.
2-139 number of available i/o pins 64 number of package pins max i/o 68 84 100 120 132 144 156 160 164 175 191 196 208 223 240 64 80 96 120 144 176 XC3020/xc3120 xc3030/xc3130 xc3042/xc3142 xc3064/xc3164 xc3090/xc3190 xc3195 54 58 58 64 74 74 70 70 70 64 80 82 96 110 120 138 138 142 144 144 144 176 176 x3478 44 34 176 144 xc3000 families pin assignments xilinx offers the six different array sizes in the xc3000 families in a variety of surface-mount and through-hole package types, with pin counts from 44 to 223. each chip is offered in several package types to accommo- date the available pc board space and manufacturing technology. most package types are also offered with different chips to accommodate design changes without the need for pc board changes. note that there is no perfect match between the number of bonding pads on the chip and the number of pins on a package. in some cases, the chip has more pads than there are pins on the package, as indicated by the informa- tion (unused pads) below the line in the following table. the iobs of the unconnected pads can still be used as storage elements if the specified propagation delays and set-up times are acceptable. in other cases, the chip has fewer pads than there are pins on the package; therefore, some package pins are not connected (n.c.), as shown above the line in the following table. 3020 3030 3042 3064 3090 3195 device 74 98 118 142 166 198 pads ? 54 u ? ? ? 44 ? 34 u ? ? ? 64 6 u 30 u ? ? ? 68 10 n.c. 14 u 34 u 50 u 82 u 114 u 84 26 n.c. 2 n.c. 18 u ? ? 100 ? ? 14 n.c. 10 u ? 132 ? ? 26 n.c. 2 u ? 144 ? ? ? 18 n.c. 6 u 160 ? ? ? ? 9 n.c 175 ? ? ? ? 10 n.c. 176 ? ? ? ? 42 n.c. 10 n.c. 208 ? ? ? ? ? 25 n.c. 223 9 n.c. 32 u n.c. = unconnected package pin u = unbonded device pad x6095 number of package pins number of unbounded or unconnected pins
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-140 pin no. xc3030 1 a0- ws-i/o 2 a1-cs2-i/o 3 a2-i/o 4 a3-i/o 5 a4-i/o 6 a14-i/o 7 a5-i/o 8 gnd 9 a13-i/o 10 a6-i/o 11 a12-i/o 12 a7-i/o 13 a11-i/o 14 a8-i/o 15 a10-i/o 16 a9-i/o 17 pwrdn 18 tclkin-i/o 19 i/o 20 i/o 21 i/o 22 i/o 23 i/o 24 vcc 25 i/o 26 i/o 27 i/o 28 i/o 29 i/o 30 i/o 31 m1- rdata 32 m0-rtrig xc3000 family 44-pin plcc pinouts xc3000, xc3000a, xc3000l, xc3100 and xc3100a families have identical pinouts pin no. xc3030 23 gnd 24 i/o 25 i/o 26 xtl2(in)-i/o 27 reset 28 done- pgm 29 i/o 30 xtl1(out)-bclk-i/o 31 i/o 32 i/o 33 i/o 34 vcc 35 i/o 36 i/o 37 i/o 38 din-i/o 39 dout-i/o 40 cclk 41 i/o 42 i/o 43 i/o 44 i/o peripheral mode and master parallel mode are not supported in the pc44 package xc3030 family 64-pin plastic vqfp pinouts xc3000, xc3000a, xc3000l and xc3100 families have identical pinouts pin no. xc3030 33 m2-i/o 34 hdc-i/o 35 i/o 36 ldc-i/o 37 i/o 38 i/o 39 i/o 40 init-i/o 41 gnd 42 i/o 43 i/o 44 i/o 45 i/o 46 i/o 47 xtal2(in)-i/o 48 reset 49 done- pg 50 d7-i/o 51 xtal1(out)-bclkin-i/o 52 d6-i/o 53 d5-i/o 54 cs0-i/o 55 d4-i/o 56 vcc 57 d3-i/o 58 cs1-i/o 59 d2-i/o 60 d1-i/o 61 rdy/ busy- rclk-i/o 62 d0-din-i/o 63 dout-i/o 64 cclk pin no. xc3030 1 gnd 2 i/o 3 i/o 4 i/o 5 i/o 6 i/o 7 pwrdwn 8 tclkin-i/o 9 i/o 10 i/o 11 i/o 12 vcc 13 i/o 14 i/o 15 i/o 16 m1- rdata 17 m0-rtrig 18 m2-i/o 19 hdc-i/o 20 ldc-i/o 21 i/o 22 init-i/o
2-141 68 plcc XC3020 xc3030 XC3020 xc3030, xc3042 84 plcc 84 pga 10 10 pwrdn 12 b2 11 11 tclkin-i/o 13 c2 12 i/o* 14 b1 13 12 i/o 15 c1 14 13 i/o 16 d2 i/o 17 d1 15 14 i/o 18 e3 16 15 i/o 19 e2 16 i/o 20 e1 17 17 i/o 21 f2 18 18 vcc 22 f3 19 19 i/o 23 g3 i/o 24 g1 20 20 i/o 25 g2 21 i/o 26 f1 21 22 i/o 27 h1 22 i/o 28 h2 23 23 i/o 29 j1 24 24 i/o 30 k1 25 25 m1- rdata 31 j2 26 26 m0-rtrig 32 l1 27 27 m2-i/o 33 k2 28 28 hdc-i/o 34 k3 29 29 i/o 35 l2 30 30 ldc-i/o 36 l3 31 i/o 37 k4 i/o * 38 l4 31 32 i/o 39 j5 32 33 i/o 40 k5 33 i/o* 41 l5 34 34 init-i/o 42 k6 35 35 gnd 43 j6 36 36 i/o 44 j7 37 37 i/o 45 l7 38 38 i/o 46 k7 39 39 i/o 47 l6 40 i/o 48 l8 41 i/o 49 k8 40 i/o* 50 l9 41 i/o* 51 l10 42 42 i/o 52 k9 43 43 xtl2(in)-i/o 53 l11 68 plcc xc3030 XC3020 XC3020 xc3030, xc3042 84 plcc 84 pga 44 reset 54 k10 45 done- pg 55 j10 46 d7-i/o 56 k11 47 xtl1(out)-bclkin-i/o 57 j11 48 d6-i/o 58 h10 i/o 59 h11 49 d5-i/o 60 f10 50 cs0-i/o 61 g10 51 d4-i/o 62 g11 i/o 63 g9 52 vcc 64 f9 53 d3-i/o 65 f11 54 cs1-i/o 66 e11 55 d2-i/o 67 e10 i/o 68 e9 i/o* 69 d11 56 d1-i/o 70 d10 57 rdy/ busy- rclk-i/o 71 c11 58 d0-din-i/o 72 b11 59 dout-i/o 73 c10 60 cclk 74 a11 61 a0- ws-i/o 75 b10 62 a1-cs2-i/o 76 b9 63 a2-i/o 77 a10 64 a3-i/o 78 a9 i/o* 79 b8 i/o* 80 a8 65 a15-i/o 81 b6 66 a4-i/o 82 b7 67 a14-i/o 83 a7 68 a5-i/o 84 c7 1 gnd 1c6 2 a13-i/o 2 a6 3 a6-i/o 3 a5 4 a12-i/o 4 b5 5 a7-i/o 5 c5 i/o* 6a4 i/o* 7b4 6 a11-i/o 8 a3 7 a8-i/o 9 a2 8 a10-i/o 10 b3 9 a9-i/o 11 a1 unprogrammed iobs have a default pull-up. this prevents an undefined pad level for unbonded or unused iobs. programmed outputs are default slew-rate limited. this table describes the pinouts of three different chips in three different packages. the pin-description column lists 84 of the 118 pads on the xc3042 (and 84 of the 98 pads on the xc3030) that are connected to the 84 package pins. ten pads, indicated by an asterisk, do not exist on the XC3020, which has 74 pads; therefore the corresponding pins on the 84-pin packages have no connections to an XC3020. six pads on the XC3020 and 16 pads on the xc3030, indicated by a dash () in the 68 plcc column, have no connection to the 68 plcc, but are connected to the 84-pin packages. xc3000 families 68-pin plcc, 84-pin plcc and pga pinouts xc3000, xc3000a, xc3000l, xc3100 and xc3100a families have identical pinouts
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-142 xc3064/xc3090/xc3195 84-pin plcc pinouts xc3000, xc3000a, xc3000l, xc3100 and xc3100a families have identical pinouts plcc pin number xc3064, xc3090, xc3195 54 reset 55 done- pg 56 d7-i/o 57 xtl1(out)-bclkin-i/o 58 d6-i/o 59 i/o 60 d5-i/o 61 cs0-i/o 62 d4-i/o 63 i/o 64 vcc 65 gnd v 66 d3-i/o v 67 cs1-i/o v 68 d2-i/o v 69 i/o 70 d1-i/o 71 rdy/ busy- rclk-i/o 72 d0-din-i/o 73 dout-i/o 74 cclk 75 a0- ws-i/o 76 a1-cs2-i/o 77 a2-i/o 78 a3-i/o 79 i/o 80 i/o 81 a15-i/o 82 a4-i/o 83 a14-i/o 84 a5-i/o 1 gnd 2 vcc v 3 a13-i/o v 4 a6-i/o v 5 a12-i/o v 6 a7-i/o v 7 i/o 8 a11-i/o 9 a8-i/o 10 a10-i/o 11 a9-i/o plcc pin number xc3064, xc3090, xc3195 12 pwrdn 13 tclkin-i/o 14 i/o 15 i/o 16 i/o 17 i/o 18 i/o 19 i/o 20 i/o 21 gnd v 22 vcc 23 i/o 24 i/o 25 i/o 26 i/o 27 i/o 28 i/o 29 i/o 30 i/o 31 m1- rdata 32 m0-rtrig 33 m2-i/o 34 hdc-i/o 35 i/o 36 ldc-i/o 37 i/o 38 i/o 39 i/o 40 i/o 41 init/i/o v 42 vcc v 43 gnd 44 i/o 45 i/o 46 i/o 47 i/o 48 i/o 49 i/o 50 i/o 51 i/o 52 i/o 53 xtl2(in)-i/o unprogrammed iobs have a default pull-up. this prevents an undefined pad level for unbonded or unused iobs. programmed ouptuts are default slew-rate limited. in the pc84 package, xc3064, xc3090 and xc3195 have additional v cc and gnd pins and thus a different pin definition than XC3020/xc3030/xc3042. v
2-143 xc3000 families 100-pin qfp pinouts xc3000, xc3000a, xc3000l, xc3100 and xc3100a families have identical pinouts pin no. 35 50 47 i/o * 36 51 48 i/o * 37 52 49 m1- rd 38 53 50 gnd * 39 54 51 mo-rt 40 55 52 vcc * 41 56 53 m2-i/o 42 57 54 hdc-i/o 43 58 55 i/o 44 59 56 ldc-i/o 45 60 57 i/o * 46 61 58 i/o* 47 62 59 i/o 48 63 60 i/o 49 64 61 i/o 50 65 62 init-i/o 51 66 63 gnd 52 67 64 i/o 53 68 65 i/o 54 69 66 i/o 55 70 67 i/o 56 71 68 i/o 57 72 69 i/o 58 73 70 i/o 59 74 71 i/o * 60 75 72 i/o * 61 76 73 xtl2-i/o 62 77 74 gnd * 63 78 75 reset 64 79 76 vcc * 65 80 77 done- pg 66 81 78 d7-i/o 67 82 79 bclkin-xtl1-i/o 68 83 80 d6-i/o pin no. 11613 gnd 2 17 14 a13-i/o 3 18 15 a6-i/o 4 19 16 a12-i/o 5 20 17 a7-i/o 62118 i/o * 72219 i/o * 8 23 20 a11-i/o 9 24 21 a8-i/o 10 25 22 a10-i/o 11 26 23 a9-i/o 12 27 24 vcc * 13 28 25 gnd * 14 29 26 pwrdn 15 30 27 tclkin-i/o 16 31 28 i/o ** 17 32 29 i/o * 18 33 30 i/o * 19 34 31 i/o 20 35 32 i/o 21 36 33 i/o 22 37 34 i/o 23 38 35 i/o 24 39 36 i/o 25 40 37 i/o 26 41 38 vcc 27 42 39 i/o 28 43 40 i/o 29 44 41 i/o 30 45 42 i/o 31 46 43 i/o 32 47 44 i/o 33 48 45 i/o 34 49 46 i/o unprogrammed iobs have a default pull-up. this prevents an undefined pad level for unbonded or unused iobs. programmed outputs are default slew-rate limited. * this table describes the pinouts of three different chips in three different packges. the pin-description column lists 100 of the 118 pads on the xc3042 that are connected to the 100 package pins. two pads, indicated by double asterisks, do not exist on the xc3030, which has 98 pads; therefore the corresponding pins have no connections. twenty-six pads, indicated by single or double asterisks, do not exist on the XC3020, which has 74 pads; therefore, the corresponding pins have no connections. (see table on page 2-139.) tqfp vqfp cqfp pqfp tqfp vqfp cqfp pqfp XC3020 xc3030 xc3042 XC3020 xc3030 xc3042 tqfp vqfp cqfp pqfp XC3020 xc3030 xc3042 69 84 81 i/o * 70 85 82 i/o * 71 86 83 i/o 72 87 84 d5-i/o 73 88 85 cs0-i/o 74 89 86 d4-i/o 75 90 87 i/o 76 91 88 vcc 77 92 89 d3-i/o 78 93 90 cs1-i/o 79 94 91 d2-i/o 80 95 92 i/o 81 96 93 i/o * 82 97 94 i/o * 83 98 95 d1-i/o 84 99 96 rdy/ busy- rclk-i/o 85 100 97 do-din-i/o 86 1 98 dout-i/o 87 2 99 cclk 88 3 100 vcc * 89 4 1 gnd * 90 5 2 ao- ws-i/o 91 6 3 a1-cs2-i/o 92 7 4 i/o ** 93 8 5 a2-i/o 94 9 6 a3-i/o 95 10 7 i/o * 96 11 8 i/o * 97 12 9 a15-i/o 98 13 10 a4-i/o 99 14 11 a14-i/o 100 15 12 a5-i/o pin no.
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-144 pga pin number c4 gnd a1 pwrdn c3 i/o-tclkin b2 i/o b3 i/o a2 i/o * b4 i/o c5 i/o a3 i/o * a4 i/o b5 i/o c6 i/o a5 i/o b6 i/o a6 i/o b7 i/o c7 gnd c8 vcc a7 i/o b8 i/o a8 i/o a9 i/o b9 i/o c9 i/o a10 i/o b10 i/o a11 i/o * c10 i/o b11 i/o a12 i/o * b12 i/o a13 i/o * c12 i/o pga pin number m3 dout-i/o p1 cclk m4 vcc l3 gnd m2 a0- ws-i/o n1 a1-cs2-i/o m1 i/o k3 i/o l2 a2-i/o l1 a3-i/o k2 i/o j3 i/o k1 a15-i/o j2 a4-i/o j1 i/o * h1 a14-i/o h2 a5-i/o h3 gnd g3 vcc g2 a13-i/o g1 a6-i/o f1 i/o * f2 a12-i/o e1 a7-i/o f3 i/o e2 i/o d1 a11-i/o d2 a8-i/o e3 i/o c1 i/o b1 a10-i/o c2 a9-i/o d3 vcc xc3000 families 132-pin ceramic and plastic pga pinouts xc3000, xc3000a, xc3000l, xc3100 and xc3100a families have identical pinouts unprogrammed iobs have a default pull-up. this prevents an undefined pad level for unbonded or unused iobs. programmed outputs are default slew-rate limited. * indicates unconnected package pins (14) for the xc3042. pga pin number p14 reset m11 vcc n13 done- pg m12 d7-i/o p13 xtl1-i/o-bclkin n12 i/o p12 i/o n11 d6-i/o m10 i/o p11 i/o * n10 i/o p10 i/o m9 d5-i/o n9 cs0-i/o p9 i/o * p8 i/o * n8 d4-i/o p7 i/o m8 vcc m7 gnd n7 d3-i/o p6 cs1-i/o n6 i/o * p5 i/o * m6 d2-i/o n5 i/o p4 i/o p3 i/o m5 d1-i/o n4 rdy/ busy- rclk-i/o p2 i/o n3 i/o n2 d0-din-i/o pga pin number b13 m1- rd c11 gnd a14 m0-rt d12 vcc c13 m2-i/o b14 hdc-i/o c14 i/o e12 i/o d13 i/o d14 ldc-i/o e13 i/o * f12 i/o e14 i/o f13 i/o f14 i/o g13 i/o g14 init-i/o g12 vcc h12 gnd h14 i/o h13 i/o j14 i/o j13 i/o k14 i/o j12 i/o k13 i/o l14 i/o * l13 i/o k12 i/o m14 i/o n14 i/o m13 xtl2(in)-i/o l12 gnd xc3042 xc3064 xc3042 xc3064 xc3042 xc3064 xc3042 xc3064
2-145 pin number 97 i/o 98 i/o 99 i/o* 100 i/o 101 i/o* 102 d1-i/o 103 rdy/ busy- rclk-i/o 104 i/o 105 i/o 106 d0-din-i/o 107 dout-i/o 108 cclk 109 vcc 110 gnd 111 a0- wsi/o 112 a1-cs2-i/o 113 i/o 114 i/o 115 a2-i/o 116 a3-i/o 117 i/o 118 i/o 119 a15-i/o 120 a4-i/o 121 i/o* 122 i/o* 123 a14-i/o 124 a5-i/o 125 C 126 gnd 127 vcc 128 a13-i/o 129 a6-i/o 130 i/o* 131 C 132 i/o* 133 a12-i/o 134 a7-i/o 135 i/o 136 i/o 137 a11-i/o 138 a8-i/o 139 i/o 140 i/o 141 a10-i/o 142 a9-i/o 143 vcc 144 gnd pin number 49 i/o 50 i/o* 51 i/o 52 i/o 53 init-i/o 54 vcc 55 gnd 56 i/o 57 i/o 58 i/o 59 i/o 60 i/o 61 i/o 62 i/o 63 i/o* 64 i/o* 65 i/o 66 i/o 67 i/o 68 i/o 69 xtl2(in)-i/o 70 gnd 71 reset 72 vcc 73 done- pg 74 d7-i/o 75 xtl1(out)-bclkin-i/o 76 i/o 77 i/o 78 d6-i/o 79 i/o 80 i/o* 81 i/o 82 i/o 83 i/o* 84 d5-i/o 85 cs0-i/o 86 i/o* 87 i/o* 88 d4-i/o 89 i/o 90 vcc 91 gnd 92 d3-i/o 93 cs1-i/o 94 i/o* 95 i/o* 96 d2-i/o xc3000 families 144-pin plastic tqfp pinouts xc3000, xc3000a, xc3000l, xc3100 and xc3100a families have identical pinouts xc3042 xc3064 pin number 1 pwrdn 2 i/o-tclkin 3 i/o* 4 i/o 5 i/o 6 i/o* 7 i/o 8 i/o 9 i/o* 10 i/o 11 i/o 12 i/o 13 i/o 14 i/o 15 i/o* 16 i/o 17 i/o 18 gnd 19 vcc 20 i/o 21 i/o 22 i/o 23 i/o 24 i/o 25 i/o 26 i/o 27 i/o 28 i/o* 29 i/o 30 i/o 31 i/o* 32 i/o* 33 i/o 34 i/o* 35 i/o 36 m1- rd 37 gnd 38 mo-rt 39 vcc 40 m2-i/o 41 hdc-i/o 42 i/o 43 i/o 44 i/o 45 ldc-i/o 46 i/o* 47 i/o 48 i/o xc3042 xc3064 xc3042 xc3064 unprogrammed iobs have a default pull-up. this prevents an undefined pad level for unbonded or unused iobs. programmed outputs are default slew-rate limited. * indicates unconnected package pins (24) for the xc3042.
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-146 xc3000 families160-pin pqfp pinouts xc3000, xc3000a, xc3000l, xc3100 and xc3100a families have identical pinouts pqfp xc3064, xc3090, pin number xc3195 121 cclk 122 vcc 123 gnd 124 a0- ws-i/o 125 a1-cs2-i/o 126 i/o 127 i/o 128 a2-i/o 129 a3-i/o 130 i/o 131 i/o 132 a15-i/o 133 a4-i/o 134 i/o 135 i/o 136 a14-i/o 137 a5-i/o 138 i/o 139 gnd 140 vcc 141 a13-i/o 142 a6-i/o 143 i/o 144 i/o 145 i/o 146 i/o 147 a12-i/o 148 a7-i/o 149 i/o 150 i/o 151 a11-i/o 152 a8-i/o 153 i/o 154 i/o 155 a10-i/o 156 a9-i/o 157 vcc 158 gnd 159 pwrdwn 160 tclkin-i/o pqfp xc3064, xc3090, pin number xc3195 1 i/o 2 i/o 3 i/o 4 i/o 5 i/o 6 i/o 7 i/o 8 i/o 9 i/o 10 i/o 11 i/o 12 i/o 13 i/o 14 i/o 15 i/o 16 i/o 17 i/o 18 i/o 19 gnd 20 vcc 21 i/o 22 i/o 23 i/o 24 i/o 25 i/o 26 i/o 27 i/o 28 i/o 29 i/o 30 i/o 31 i/o 32 i/o 33 i/o 34 i/o 35 i/o 36 i/o 37 i/o 38 i/o 39 i/o 40 m1- rdata pqfp xc3064, xc3090, pin number xc3195 41 gnd 42 m0Crtrig 43 vcc 44 m2-i/o 45 hdc-i/o 46 i/o 47 i/o 48 i/o 49 ldc-i/o 50 i/o 51 i/o 52 i/o 53 i/o 54 i/o 55 i/o 56 i/o 57 i/o 58 i/o 59 init-i/o 60 vcc 61 gnd 62 i/o 63 i/o 64 i/o 65 i/o 66 i/o 67 i/o 68 i/o 69 i/o 70 i/o 71 i/o 72 i/o 73 i/o 74 i/o 75 i/o 76 xtl2-i/o 77 gnd 78 reset 79 vcc 80 done/ pg pqfp xc3064, xc3090, pin number xc3195 81 d7-i/o 82 xtl1-i/o-bclkin 83 i/o 84 i/o 85 i/o 86 d6-i/o 87 i/o 88 i/o 89 i/o 90 i/o 91 i/o 92 d5-i/o 93 cs0-i/o 94 i/o 95 i/o 96 i/o 97 i/o 98 d4-i/o 99 i/o 100 vcc 101 gnd 102 d3-i/o 103 cs1-i/o 104 i/o 105 i/o 106 i/o 107 i/o 108 d2-i/o 109 i/o 110 i/o 111 i/o 112 i/o 113 i/o 114 d1-i/o 115 rdy/ busy- rclk-i/o 116 i/o 117 i/o 118 i/o 119 d0-din-i/o 120 dout-i/o unprogrammed iobs have a default pull-up. this prevents an undefined pad level for unbonded or unused iobs. programmed iobs are default slew-rate limited. *indicates unconnected package pins (18) for the xc3064. * * * * * * * * * * * * * * * * * *
2-147 xc3000 families 175-pin ceramic and plastic pga pinouts xc3000, xc3000a, xc3000l, xc3100 and xc3100a families have identical pinouts pga pin number d13 i/o b14 m1- rdata c14 gnd b15 m0-rtrig d14 vcc c15 m2-i/o e14 hdc-i/o b16 i/o d15 i/o c16 i/o d16 ldc-i/o f14 i/o e15 i/o e16 i/o f15 i/o f16 i/o g14 i/o g15 i/o g16 i/o h16 i/o h15 init-i/o h14 vcc j14 gnd j15 i/o j16 i/o k16 i/o k15 i/o k14 i/o l16 i/o l15 i/o m16 i/o m15 i/o l14 i/o n16 i/o p16 i/o n15 i/o r16 i/o m14 i/o p15 xtl2(in)-i/o n14 gnd r15 reset p14 vcc pga pin number r3 d0-din-i/o n4 dout-i/o r2 cclk p3 vcc n3 gnd p2 a0- ws-i/o m3 a1-cs2-i/o r1 i/o n2 i/o p1 a2-i/o n1 a3-i/o l3 i/o m2 i/o m1 a15-i/o l2 a4-i/o l1 i/o k3 i/o k2 a14-i/o k1 a5-i/o j1 i/o j2 i/o j3 gnd h3 vcc h2 a13-i/o h1 a6-i/o g1 i/o g2 i/o g3 i/o f1 i/o f2 a12-i/o e1 a7-i/o e2 i/o f3 i/o d1 a11-i/o c1 a8-i/o d2 i/o b1 i/o e3 a10-i/o c2 a9-i/o d3 vcc c3 gnd pga pin number b2 pwrdn d4 tclkin-i/o b3 i/o c4 i/o b4 i/o a4 i/o d5 i/o c5 i/o b5 i/o a5 i/o c6 i/o d6 i/o b6 i/o a6 i/o b7 i/o c7 i/o d7 i/o a7 i/o a8 i/o b8 i/o c8 i/o d8 gnd d9 vcc c9 i/o b9 i/o a9 i/o a10 i/o d10 i/o c10 i/o b10 i/o a11 i/o b11 i/o d11 i/o c11 i/o a12 i/o b12 i/o c12 i/o d12 i/o a13 i/o b13 i/o c13 i/o a14 i/o xc3090, xc3195 xc3090, xc3195 xc3090, xc3195 pga pin number r14 done- pg n13 d7-i/o t14 xtl1(out)-bclkin-i/o p13 i/o r13 i/o t13 i/o n12 i/o p12 d6-i/o r12 i/o t12 i/o p11 i/o n11 i/o r11 i/o t11 d5-i/o r10 cs0-i/o p10 i/o n10 i/o t10 i/o t9 i/o r9 d4-i/o p9 i/o n9 vcc n8 gnd p8 d3-i/o r8 cs1-i/o t8 i/o t7 i/o n7 i/o p7 i/o r7 d2-i/o t6 i/o r6 i/o n6 i/o p6 i/o t5 i/o r5 d1-i/o p5 rdy/ busy- rclk-i/o n5 i/o t4 i/o r4 i/o p4 i/o unprogrammed iobs have a default pull-up. this prevents an undefined pad level for unbonded or unused iobs. programmed outputs are default slew-rate limited. pins a2, a3, a15, a16, t1, t2, t3, t15 and t16 are not connected. pin a1 does not exist. xc3090, xc3195
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-148 89 done- pg 90 d7-i/o 91 xtal1(out)-bclkin-i/o 92 i/o 93 i/o 94 i/o 95 i/o 96 d6-i/o 97 i/o 98 i/o 99 i/o 100 i/o 101 i/o 102 d5-i/o 103 cs0-i/o 104 i/o 105 i/o 106 i/o 107 i/o 108 d4-i/o 109 i/o 110 vcc 111 gnd 112 d3-i/o 113 cs1-i/o 114 i/o 115 i/o 116 i/o 117 i/o 118 d2-i/o 119 i/o 120 i/o 121 i/o 122 i/o 123 i/o 124 d1-i/o 125 rdy/ busy- rclk-i/o 126 i/o 127 i/o 128 i/o 129 i/o 130 d0-din-i/o 131 dout-i/o 132 cclk 133 vcc 134 gnd 135 a0- ws-i/o 136 a1-cs2-i/o 137 C 138 i/o 139 i/o 140 a2-i/o 141 a3-i/o 142 C 143 C 144 i/o 145 i/o 146 a15-i/o 147 a4-i/o 148 i/o 149 i/o 150 a14-i/o 151 a5-i/o 152 i/o 153 i/o 154 gnd 155 vcc 156 a13-i/o 157 a6-i/o 158 i/o 159 i/o 160 C 161 C 162 i/o 163 i/o 164 a12-i/o 165 a7-i/o 166 i/o 167 i/o 168 C 169 a11-i/o 170 a8-i/o 171 i/o 172 i/o 173 a10-i/o 174 a9-i/o 175 vcc 176 gnd pin number xc3090 pin number xc3090 pin number xc3090 pin number xc3090 1 pwrdwn 2 tclkin-i/o 3 i/o 4 i/o 5 i/o 6 i/o 7 i/o 8 i/o 9 i/o 10 i/o 11 i/o 12 i/o 13 i/o 14 i/o 15 i/o 16 i/o 17 i/o 18 i/o 19 i/o 20 i/o 21 i/o 22 gnd 23 vcc 24 i/o 25 i/o 26 i/o 27 i/o 28 i/o 29 i/o 30 i/o 31 i/o 32 i/o 33 i/o 34 i/o 35 i/o 36 i/o 37 i/o 38 i/o 39 i/o 40 i/o 41 i/o 42 i/o 43 i/o 44 C xc3090 176-pin tqfp pinouts xc3000, xc3000a, xc3000l, xc3100 and xc3100a families have identical pinouts 45 m1- rdata 46 gnd 47 m0-rtrig 48 vcc 49 m2-i/o 50 hdc-i/o 51 i/o 52 i/o 53 i/o 54 ldc-i/o 55 C 56 i/o 57 i/o 58 i/o 59 i/o 60 i/o 61 i/o 62 i/o 63 i/o 64 i/o 65 init-i/o 66 vcc 67 gnd 68 i/o 69 i/o 70 i/o 71 i/o 72 i/o 73 i/o 74 i/o 75 i/o 76 i/o 77 i/o 78 i/o 79 i/o 80 i/o 81 i/o 82 C 83 C 84 i/o 85 xtal2(in)-i/o 86 gnd 87 reset 88 vcc unprogrammed iobs have a default pull-up. this prevents an undefined pad level for unbonded or unused iobs. programmed outputs are default slew-rate limited.
2-149 xc3090 208-pin pqfp pinouts xc3000, xc3000a, xc3000l, xc3100 and xc3100a families have identical pinouts pin number xc3090 157 C 158 C 159 C 160 gnd 161 ws-a0-i/o 162 cs2-a1-i/o 163 i/o 164 i/o 165 a2-i/o 166 a3-i/o 167 i/o 168 i/o 169 C 170 C 171 C 172 a15-i/o 173 a4-i/o 174 i/o 175 i/o 176 C 177 C 178 a14-i/o 179 a5-i/o 180 i/o 181 i/o 182 gnd 183 vcc 184 a13-i/o 185 a6-i/o 186 i/o 187 i/o 188 C 189 C 190 i/o 191 i/o 192 a12-i/o 193 a7-i/o 194 C 195 C 196 C 197 i/o 198 i/o 199 a11-i/o 200 a8-i/o 201 i/o 202 i/o 203 a10-i/o 204 a9-i/o 205 vcc 206 C 207 C 208 C pin number xc3090 53 C 54 C 55 vcc 56 m2-i/o 57 hdc-i/o 58 i/o 59 i/o 60 i/o 61 ldc-i/o 62 i/o 63 i/o 64 C 65 C 66 C 67 C 68 i/o 69 i/o 70 i/o 71 i/o 72 C 73 C 74 i/o 75 i/o 76 i/o 77 init-i/o 78 vcc 79 gnd 80 i/o 81 i/o 82 i/o 83 C 84 C 85 i/o 86 i/o 87 i/o 88 i/o 89 i/o 90 C 91 C 92 C 93 i/o 94 i/o 95 i/o 96 i/o 97 i/o 98 i/o 99 i/o 100 xtl2-i/o 101 gnd 102 reset 103 C 104 C pin number xc3090 105 C 106 vcc 107 d/ p 108 C 109 d7-i/o 110 xtl1-bclkin-i/o 111 i/o 112 i/o 113 i/o 114 i/o 115 d6-i/o 116 i/o 117 i/o 118 i/o 119 C 120 i/o 121 i/o 122 d5-i/o 123 cs0-i/o 124 i/o 125 i/o 126 i/o 127 i/o 128 d4-i/o 129 i/o 130 vcc 131 gnd 132 d3-i/o 133 cs1-i/o 134 i/o 135 i/o 136 i/o 137 i/o 138 d2-i/o 139 i/o 140 i/o 141 i/o 142 C 143 i/o 144 i/o 145 d1-i/o 146 rdy/ busy- rclk-i/o 147 i/o 148 i/o 149 i/o 150 i/o 151 din-d0-i/o 152 dout-i/o 153 cclk 154 vcc 155 C 156 C pin number xc3090 1C 2 gnd 3 pwrdwn 4 tclkin-i/o 5 i/o 6 i/o 7 i/o 8 i/o 9 i/o 10 i/o 11 i/o 12 i/o 13 i/o 14 i/o 15 C 16 i/o 17 i/o 18 i/o 19 i/o 20 i/o 21 i/o 22 i/o 23 i/o 24 i/o 25 gnd 26 vcc 27 i/o 28 i/o 29 i/o 30 i/o 31 i/o 32 i/o 33 i/o 34 i/o 35 i/o 36 i/o 37 C 38 i/o 39 i/o 40 i/o 41 i/o 42 i/o 43 i/o 44 i/o 45 i/o 46 i/o 47 i/o 48 m1- rdata 49 gnd 50 m0-rtrig 51 C 52 C unprogrammed iobs have a default pull-up. this prevents an undefined pad level for unbonded or unused iobs. programmed outputs are default slew-rate limited. *in pq208, xc3090 and xc3195 have different pinouts.
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-150 xc3195 pq208 and pg223 pinouts pin description pg223 pq208 a9-i/o b1 206 a10-i/o e3 205 i/o e4 204 i/o c2 203 i/o c1 202 i/o d2 201 a8-i/o e2 200 a11-i/o f4 199 i/o f3 198 i/o d1 197 i/o f2 196 i/o g2 194 a7-i/o g4 193 a12-i/o g1 192 i/o h2 191 i/o h3 190 i/o h1 189 i/o h4 188 i/o j3 187 i/o j2 186 a6-i/o j1 185 a13-i/o k3 184 vcc j4 183 gnd k4 182 i/o k2 181 i/o k1 180 a5-i/o l2 179 a14-i/o l4 178 i/o l3 177 i/o l1 176 i/o m1 175 i/o m2 174 a4-i/o m4 173 a15-i/o n2 172 i/o n3 171 i/o p2 169 i/o r1 168 i/o n4 167 a3-i/o t1 166 a2-i/o r2 165 i/o p3 164 i/o t2 163 i/o p4 162 i/o u1 161 a1-cs2-i/o v1 160 a0- ws-i/o t3 159 gnd r3 158 vcc r4 157 cclk u2 156 dout-i/o v2 155 v v pin description pg223 pq208 i/o u18 102 i/o p15 101 i/o t17 100 i/o t18 99 i/o p16 98 i/o r17 97 i/o n15 96 i/o r18 95 i/o p17 94 i/o n17 93 i/o n16 92 i/o m15 89 i/o m18 88 i/o m17 87 i/o l18 86 i/o l17 85 i/o l15 84 i/o l16 83 i/o k18 82 i/o k17 81 i/o k16 80 gnd k15 79 vcc j15 78 init j16 77 i/o j17 76 i/o j18 75 i/o h16 74 i/o h15 73 i/o h17 72 i/o h18 71 i/o g17 70 i/o g18 69 i/o g15 68 i/o f16 67 i/o f17 66 i/o e17 63 i/o c18 62 i/o f15 61 i/o d17 60 ldc-i/o e16 59 i/o c17 58 i/o b18 57 i/o e15 56 hdc-i/o a18 55 m2-i/o a17 54 vcc d16 53 m0-rtig b17 52 gnd d15 51 m1/ rdata c16 50 v pin description pg223 pq208 i/o b16 49 i/o a16 48 i/o d14 47 i/o c15 46 i/o b15 45 i/o a15 44 i/o c14 43 i/o d13 42 i/o b14 41 i/o c13 40 i/o b13 39 i/o b12 38 i/o d12 37 i/o a12 36 i/o b11 35 i/o c11 34 i/o a11 33 i/o d11 32 i/o a10 31 i/o b10 30 i/o c10 29 i/o c9 28 vcc d10 27 gnd d9 26 i/o b9 25 i/o a9 24 i/o c8 23 i/o d8 22 i/o b8 21 i/o a8 20 i/o b7 19 i/o a7 18 i/o d7 17 i/o b6 14 i/o c6 13 i/o b5 12 i/o a4 11 i/o d6 10 i/o c5 9 i/o b4 8 i/o b3 7 i/o c4 6 i/o d5 5 i/o c3 4 i/o a3 3 tclkin-i/o a2 2 pwrdn b2 1 gnd d4 208 vcc d3 207 v unprogrammed iobs have a default pull-up. this prevents an undefined pad level for unbonded or unused iobs. programmed outputs are default slew-rate limited. in the pq208 package, pins 15, 16, 64, 65, 90, 91, 142, 143, 170 and 195 are not connected. *in pq208, xc3090 and xc3195 have different pinouts.
2-151 xc3000 component availability pins 44 64 68 84 100 132 144 160 164 175 176 208 223 top- top- type plast. plast. plast. plast. ceram plast. plast. plast. brazed plast. ceram. plast. plast. brazed plast. ceram. plast. plast. ceram. plcc vqfp plcc plcc pga pqfp tqfp vqfp cqfp pga pga tqfp pqfp cqfp pga pga tqfp pqfp pga code pc44 vq64 pc68 pc84 pg84 pq100 tq100 vq100 cb100 pp132 pg132 tq144 pq160 cb164 pp175 pg175 tq176 pq208 pg223 XC3020 -50 m b m b -70 c i c i c i m b c i c m b -100 c i c i c i m b c i c m b -125 cccc xc3030 -50 m -70 c i c i c i c i m c i c -100 c i c i c i c i m c i c -125 c ccccc xc3042 -50 m b m b m b -70 c i c i m b c i c c m b c c i m b -100 c i c i m b c i c c m b c c i m b -125 cccc cc xc3064 -50 m -70 c i c i c i m c i -100 c i c i c i m c i -125 cccc xc3090 -50 m b m b -70 c i c i c i m b c i c i m b c i -100 c i c i c i m b c i c i m b c i -125 c cccc XC3020a -7 c ic ic ic i -6 cccc xc3030a -7 c ic ic ic ic ic i c i -6 cccccc c xc3042a -7 c ic ic i c i c ic ic i -6 ccc c ccc xc3064a -7 c i c ic ic ic i -6 c cccc xc3090a -7 c i c i c ic ic ic i -6 c c cccc XC3020l c xc3030l cc c xc3042l ccc xc3064l c c xc3090l c c -5 c ic ic ic i -4 c ic ic ic i xc3120a -3 c ic ic ic i -2 c ic ic ic i -1 c ic ic ic i -5 c ic ic ic ic ic i c -4 c ic ic ic ic ic i c xc3130a -3 c ic ic ic ic ic ic i -2 c ic ic ic ic ic ic i -1 c c c c c c c -5 c i c i m b c i c mb c c i m b c i -4 c ic ic i c c c ic i xc3142a -3 c ic ic ic i c ic ic i -2 c ic ic ic i c ic ic i -1 c c c c c c c -5 c i c ic ic ic i -4 c i c ic ic ic i xc3164a -3 c i c ic ic ic i -2 c i c ic ic ic i -1 c c c c c -5 c i c im bc ic i m bc i c i -4 c i c i c ic ic ic i xc3190a -3 c i c i c ic ic ic i -2 c i c i c ic ic ic i -1 c c c c c c -5 c i c im bc ic i m b c i c i -4 c i c i c i c i c i c i xc3195a -3 c i c i c i c i c i c i -2 c i c i c i c i c i c i -1 c c c c c c c = commercial = 0 to +85 c i = industrial = -40 to +100 c m = mil temp = -55 to +125 c b = mil-std-883c class b parentheses indicate future product plans
xc3000, xc3000a, xc3000l, xc3100, xc3100a logic cell array families 2-152 example: xc3130a- 3 pc44c temperature range device type block delay number of pins package type xc3000, xc3000a, xc3000l, xc3100, xc3100a the features of the original xc3000 family are described on the preceding pages. xc3100a is functionally identical with xc3000, but offers substantially faster performance. there is also an addi- tional high-end family member, the xc3195a. xc3000l uses a 3.3 v supply voltage and has lower power-down current. the xc3000a, xc3000l and xc3100a families all offer identical enhanced functionality. they are thus supersets of the xc3000 familiy. additional routing resources provide improved perfor- mance and higher density. there is now a direct connec- tion from each clb output to the data input of its nearest tbuf. this speeds up the path and preserves general routing resources that can be used for other purposes. the clb clock enable and the tbuf output enable are now driven by two different vertical longlines. in the xc3000/3100 devices, the clb clock enable signal and the adjacent tbuf output enable signal can both be driven only from the same vertical longline. that makes these two functions mutually exclusive, and thus creates place- ment constraints. using separate longlines for these two functions leads to improved density and performance, especially in bus-oriented applications. bitstream error checking protects against erroneous configuration. each xilinx fpga bitstream consists of a 40-bit preamble, followed by a device-specific number of data frames. the number of bits per frame is also device-specific; however, each frame ends with three stop bits (111) followed by a start bit for the next frame (0). all devices in all xc3000 families start reading in a new frame when they find the first 0 after the end of the previous frame. xc3000/xc3100 devices do not check for the correct stop bits, but xc3000a/xc3100a and xc3000l devices check that the last three bits of any frame are actually 111. under normal circumstances, all these fpgas behave the same way; however, if the bitstream is corrupted, an xc3000/xc3100 device will always start a new frame as soon as it finds the first 0 after the end of the previous frame, even if the data is completely wrong or out-of-sync. given sufficient zeros in the data stream, the device will also go done, but with incorrect configuration and the possibility of internal contention. an xc3000a/xc3100a/xc3000l device starts any new frame only if the three preceding bits are all ones. if this check fails, it pulls init low and stops the internal configu- ration, although the master cclk keeps running. the user must then start a new configuration by applying a >6 m s low level on reset. this simple check does not protect against random bit errors, but it offers almost 100 percent protection against erroneous configuration files, defective configuration data sources, synchronization errors between configuration source and fpga, or pc-board level defects, such as broken lines or solder-bridges. a separate modification slows down the reset input before configuration by using a two-stage shift register driven from the internal clock. it tolerates submicrosecond high spikes on reset before configuration. the xc3000 master can be connected like an xc4000 master, but with its reset input used instead of init. (on xc3000, init is output only). soft start-up . after configuration, the outputs of all lca device in a daisy-chain become active simultaneously, as a result of the same cclk edge. in the original xc3000/ 3100 devices, each output becomes active in either fast or slew-rate limited mode, depending on the way it is config- ured. this can lead to large ground-bounce signals. in the new xc3000a/xc3000l/xc31000a devices, all outputs become active first in slew-rate limited mode, reducing the ground bounce. after this soft start-up, each individual output slew rate is again controlled by the respective configuration bit. the xc3000, xc3000l, zc3100a are fully supported by the xact version 5.0, or later, development system. xact 5.0 provides many advanced features not available with the xc3000 software such as timing-driven place and route (xact-performance ?) and the x-blox ? module generator. for a detailed description of the device architecture, see pages 2-105 through 2-123. for a detailed description of the configuration modes and their timing, see pages 2-124 through 2-132. for detailed lists of package pin-outs, see pages 2-140 through 2-150. for package physical dimensions and thermal data, see section 4. ordering information


▲Up To Search▲   

 
Price & Availability of XC3020

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X